我怎样才能应用一个jQuery函数的所有元素具有相同的ID?

我是jQuery的新手。 我有以下代码:

jQuery(document).ready(function() { jQuery('#carousel').jcarousel(); }); 

它仅适用于id="carousel"的第一个ul ,而不适用于其他的。 我如何将它应用于所有具有相同ID的元素?

HTML:

 <!-- jQuery applies to this div --> <div id="slideshow-carousel"> <ul id="carousel" class="jcarousel jcarousel-skin-tango"> <!-- ... --> </ul> </div> <!-- jQuery does not apply for this div --> <div id="slideshow-carousel"> <ul id="carousel" class="jcarousel jcarousel-skin-tango"> <!-- ... --> </ul> </div> 

元素的ID在DOM中应该是唯一的。 具有相同的两个或多个元素的ID是无效的HTML 。 要通过元素共享function,请为它们分配一个公共类,而不是为它们分配相同的ID。 如果您不能将它们分配给一个普通的类,下面的解决方法将允许您select具有相同id属性的元素:

使用相同的ID (如果不能更改ID)

 jQuery(document).ready(function() { jQuery('[id=carousel]').jcarousel(); }); 

使用一个普通的类(推荐的方法)

 jQuery(document).ready(function() { jQuery('.carousel').jcarousel(); }); 

你不能有多个具有相同ID的元素,这就是为什么不工作。 你应该使用class="caroussel"来代替。

 jQuery(document).ready(function() { jQuery('.carousel').jcarousel(); }); 

在jQuery的最新版本中,当页面上有多个id时,select器将仅返回在DOM中find的第一个“id”。 你应该使用类。

在这种情况下,你应该使用类。 你不能使用ID。 否则,你可以尝试下面的代码。

 jQuery('ul').jcarousel();