【发布时间】:2012-10-12 13:32:52
【问题描述】:
我目前正在我的 jQuery 代码中编写非常明确的选择器。例如给定这个标记
<div class="codeblue">
<div class="codeyellow">
<div class="codeorange">
<div class="codewhite">
<select id="codeChoice">
<option>red</option>
<option>green</option>
<option>black</option>
</select>
</div>
</div>
</div>
</div>
我使用这个显式选择器
var $select = $('.codeblue .codeyellow .codeorange .codewhite #codeChoice');
这样做会更好吗?
var $codeBlue = $('.codeblue');
var $select = $codeBlue.find('#codeChoice');
不使用显式选择器是否会影响性能?
【问题讨论】:
-
你为什么要这样做?应该只有一个 ID 为
codeChoice的元素。 -
你所做的实际上让它变慢了。
-
只是一个旁注:在 javascript 中你不需要美元符号,你可以简单地使用 var selet = ...
-
这两个sn-ps完全不同。
标签: javascript jquery html jquery-selectors