CSS 或 jQuery 选择器?
CSS or jQuery selector?
假设有以下 HTML:
<div id="test">
<span class="testSpan"></span>
</div>
select在#test
div
中span
有两种方法
(我知道我可以直接select跨度但这不是问题的重点):
$('#test > .testSpan');
和
$('#test').find('.testSpan');
就速度、浏览器兼容性或其他方面而言,这些方式中哪一种是最佳的?
还是没有区别?
如果你会看到这个 JSPERF test 那么你会发现 .find()
绝对是更好更快的方法。
实际上 .find()
将 select 所有匹配的后代元素(即子元素、子元素的子元素等等...),而 >
是直接子元素 select或(即,它将获取直接子级)。
假设有以下 HTML:
<div id="test">
<span class="testSpan"></span>
</div>
select在#test
div
span
有两种方法
(我知道我可以直接select跨度但这不是问题的重点):
$('#test > .testSpan');
和
$('#test').find('.testSpan');
就速度、浏览器兼容性或其他方面而言,这些方式中哪一种是最佳的?
还是没有区别?
如果你会看到这个 JSPERF test 那么你会发现 .find()
绝对是更好更快的方法。
实际上 .find()
将 select 所有匹配的后代元素(即子元素、子元素的子元素等等...),而 >
是直接子元素 select或(即,它将获取直接子级)。