【发布时间】:2014-10-15 13:38:10
【问题描述】:
我经常需要在没有与之关联的类或 ID 的 li 标签上设置 jQuery 事件,如下例所示:
<div id="menu">
<ul id="nav">
<li>Nav Item 1</li>
<li>Nav Item 2</li>
<li>Nav Item 3</li>
<li>Nav Item 4</li>
<li>Nav Item 5</li>
</ul>
</div>
我的理解是 jQuery 选择从右到左读取,所以如果我要使用 $('#nav > li) jquery 选择器,它必须搜索所有 li 标签,然后评估 li 标签是否有一个带有 id 的父标签导航
假设此页面有 30 个 li 标签,但我只想选择示例中的 5 个,使用 $('#nav').children('li') 会更有效吗?我的逻辑是它会很快找到#nav ID,然后里面只有5个元素可以搜索。
我还有一个问题是如果#nav 有超过 30 个子元素,那么使用子选择器$('#nav > li') 会更有效吗?
提前致谢
【问题讨论】:
标签: javascript jquery performance jquery-selectors