日期:2014-05-16  浏览次数:20408 次

求解JQUERY查找效率问题
在一个页面中,代码形如:
HTML code

。。。。。。。。
<div id="tab"><span class="nowon">test</span></div>
。。。。。。。


现我想查找带class为nowon的span,我用$(".nowon")快一点呢还是$("#tab .nowon")快一点呢?请指教

------解决方案--------------------
HTML code

$(".nowon") 寻找你当前页面dom元素里面所有带有nowon样式的元素
$("#tab .nowon") 寻找当前dom元素id为tab下面所有带有nowon样式的元素
如果你确定你要找的都是nowon下的span而且你知道他位于哪个元素下面那就用
$("#tab").find("span[class='nowon']")
因为如果你下面有同名的<div class='nowon'></div>如果你能确认下面肯定不会出现同样式名的非nowon元素那直接用你的$("#tab .nowon")更加快

------解决方案--------------------
按你的这种写法:$(".nowon")快一点的。这个直接查找了,你的那个#tab,还得查一个div 通过div在找span 速度应该比前一种慢点。因为这个查找也是按顺序来的,不是无缘无故来查找的。