【问题标题】:div addClass only on ONE divdiv addClass 仅在一个 div 上
【发布时间】:2010-01-21 21:18:48
【问题描述】:

当我做类似的事情时:

$('#container').addClass("contract");

它只将类添加到具有 id 容器的第一个 div

当我做类似的事情时:

$('.container').addClass("contract");

它将类添加到所有带有类容器的 div 中

为什么?

【问题讨论】:

    标签: javascript jquery html addclass


    【解决方案1】:

    每个元素 ID 都必须是唯一的。一个 ID 指向一个且只有一个属性。 Jquery 或任何其他框架甚至不会考虑您可能拥有多个具有特定 id 的元素。您的所有元素都需要具有不同的 ID。 Javascript 和 DOM 期望这一点(例如 document.getElementByID 将只返回一个元素,如果 ID 重复,现在可能完全可以工作)。一切都在预料之中。

    【讨论】:

      【解决方案2】:

      因为id 属性在 HTML 文档中必须是唯一的。因此,当您找到第一个元素时,无需使用id="abc" 搜索任何其他元素。

      【讨论】:

        【解决方案3】:

        一个元素的 ID 属性应该唯一地标识它。一个类属性可以应用于多个元素。由于 ID 是唯一的,jQuery 只会将其应用于第一个匹配的元素。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-06-29
          • 1970-01-01
          • 2013-11-13
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多