当我做类似的事情时:
$('#container').addClass("contract");
它只将类添加到具有 id 容器的第一个 div
当我做类似的事情时:
$('.container').addClass("contract");
它将类添加到所有带有类容器的 div
为什么 ?
当我做类似的事情时:
$('#container').addClass("contract");
它只将类添加到具有 id 容器的第一个 div
当我做类似的事情时:
$('.container').addClass("contract");
它将类添加到所有带有类容器的 div
为什么 ?
每个元素 ID 必须是唯一的。一个 ID 指向一个且只有一个属性。Jquery 或任何其他框架甚至不会考虑您可能拥有多个具有特定 id 的元素。您的所有元素都需要具有不同的 ID。Javascript 和 DOM 期望这一点(例如 document.getElementByID 将只返回一个元素,如果 ID 重复,现在可能完全可以工作)。一切都在预料之中。
因为id
属性在 HTML 文档中必须是唯一的。id="abc"
因此,当您找到第一个元素时,无需搜索任何其他元素。
一个元素的 ID 属性应该唯一地标识它。一个类属性可以应用于多个元素。由于 ID 是唯一的,jQuery 只会将它应用于匹配它的第一个元素。