如何将 jQuery 函数应用于具有相同 ID 的所有元素?

发布于 2025-01-10 13:59:53 字数 675 浏览 0 评论 0原文

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

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

它仅适用于第一个 ulid="carousel",不适用于其他。如何将它应用于具有相同 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>

I am new to jQuery. I have the following code:

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

It only applies to the first ul with id="carousel", not for the others. How can I apply it to all elements which have the same 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>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

手心的温暖 2025-01-17 13:59:53

元素的 ID 在 DOM 中应该是唯一。两个或多个元素具有相同的 ID 是无效的 html。要在元素之间共享功能,请为它们分配一个公共类,而不是为它们提供相同的 ID。如果您无法为它们分配一个公共类,下面的解决方法将允许您选择具有相同 id 属性的元素:

使用相同的 ID (如果无法更改 ID)

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

使用公共类 <强>(推荐方式)

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

The IDs for elements are supposed to be unique in the DOM. Having the same ID for two or more elements is not valid html. To share functionality across elements, assign them a common class, rather than giving them the same ID. If you can't assign them a common class, the workaround below will allow you to select elements with the same id attribute:

Using the same ID (If not possible to change ID)

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

Using a common class (Recommended way)

jQuery(document).ready(function() { 
    jQuery('.carousel').jcarousel();
});
独﹏钓一江月 2025-01-17 13:59:53

不能有多个具有相同 Id 的元素,这就是不起作用的原因。您应该使用 class="caroussel" 代替。

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

You can't have more than one element with the same Id, that's why is not working. You should use class="caroussel" instead.

jQuery(document).ready(function() {
    jQuery('.carousel').jcarousel();
});
歌入人心 2025-01-17 13:59:53

在 jQuery 的最新版本中,当页面上有多个 id 时,选择器将仅返回在 DOM 中找到的第一个“id”。你应该使用类来代替。

In recent versions of jQuery, when you have multiple id's on the page, selector will return only the first 'id' that was found in the DOM. You should use class instead.

月野兔 2025-01-17 13:59:53

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

jQuery('ul').jcarousel();

In this situation you should use class. You can not use id. Otherwise you can try the below code.

jQuery('ul').jcarousel();
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文