【发布时间】:2011-01-02 13:26:17
【问题描述】:
我正在尝试在我的页面上选择一个具有特定类和 ID 的 HTML 元素。这是标签:
<div class="statusLight" id="green"></div>
我试过这个没有运气:
$statusLight = $('.statusLight#green');
我知道我可以简单地说
$statusLight = $('#green');
但我也试图找到一种方法来根据它的类来选择它。任何帮助将不胜感激。
【问题讨论】:
-
知道ID为什么还要按班级选择?按照设计,ID 是唯一的,因此这将是选择元素的最快方式。
-
我不明白。 id 应该是唯一的并结束所有过滤。应用任何东西 + id 应该与仅通过 ID 选择完全相同。你为什么要这样做?
-
无论如何,我很确定 jQuery 在找到具有 ID 的选择器的第一个实例时会停止,从而无法区分重复 ID。
-
这样做的一个原因可能是元素的类发生了变化,他只想在给定类的情况下选择元素。 (好吧,只是猜测,但关键是这可能是有原因的)。
-
“我很确定 jQuery 在找到具有 ID 的选择器的第一个实例时会停止”——我希望并相信 这不是真的,因为它会破坏 CSS 选择器的点——选择器的所有部分都必须匹配,而不仅仅是 ID。如果您只对具有特定类的给定元素感兴趣怎么办?您的优化会破坏这种行为。
标签: jquery jquery-selectors css-selectors