到處都是jQuery選擇器的年代 不了解它們的性能,行嗎
先在每個(gè)測(cè)試頁(yè)面的head中引入google提供的jquery文件和用于測(cè)試的小插件firejspt。
<!-- 引入FireJSPT的庫(kù)文件 -->
<script type="text/javascript" src="firejspt.js"></script>
<!-- 引入google提供的1.44版的jQuery的庫(kù)文件,其實(shí)哪個(gè)版本都無(wú)所謂了,呵呵 -->
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
1. 最常用的id選擇器和class選擇器
將以下代碼復(fù)制200次,置于body標(biāo)簽內(nèi)。
<div id="ilian">比較id選擇器和class選擇器</div>
<div class="ilian">比較id選擇器和class選擇器</div>
用于本次測(cè)試的JS代碼如下:
function ilianTest01(){
$('#ilian').click(function() { alert('Hello World'); });
}
function ilianTest02(){
$('.ilian').click(function() { alert('Hello World'); });
}
/*調(diào)用2個(gè)函數(shù)進(jìn)行測(cè)試*/
$(function(){
jspt.test(function(){ ilianTest01(); });
jspt.test(function(){ ilianTest02(); });
});
測(cè)試結(jié)果如下:
由圖可以id選擇器相比于class選擇器的效率優(yōu)勢(shì)是非常地。。。。。
將以下代碼放入body標(biāo)簽內(nèi),并將其中的li標(biāo)簽復(fù)制500次。
<ul id="ilian">
<li>比較直接子標(biāo)簽符號(hào)“>”和children</li>
<li>比較直接子標(biāo)簽符號(hào)“>”和children</li>
<li>比較直接子標(biāo)簽符號(hào)“>”和children</li>
<!-- 省略497次 -->
</ul>
用于本次測(cè)試的JS代碼如下:
function ilianTest01(){
$('#ilian > li').click(function() { alert('Hello World'); });
}
function ilianTest02(){
$('#ilian').children('li').click(function() { alert('Hello World'); });
}
/*調(diào)用2個(gè)函數(shù)進(jìn)行測(cè)試*/
$(function(){
jspt.test(function(){ ilianTest01(); });
jspt.test(function(){ ilianTest02(); });
});
測(cè)試結(jié)果:
由此可見(jiàn)children選擇器要優(yōu)于直接子標(biāo)簽符號(hào)選擇器。
限于文章長(zhǎng)度,本文只展示了最基本的測(cè)試,且以上測(cè)試,均是在簡(jiǎn)單環(huán)境中測(cè)試的,測(cè)試效果并不代表絕對(duì)的結(jié)論。
相關(guān)文章
關(guān)于event.cancelBubble和event.stopPropagation()的區(qū)別介紹
cancelBubble用于ie的阻止冒泡事件,event.stopPropagation()用于firefox和chrome等其他瀏覽器的疑惑介紹。2011-12-12EasyUI創(chuàng)建人員樹(shù)的實(shí)例代碼
最近做項(xiàng)目做一個(gè)樹(shù)狀的下拉列表,下面小編把easyUI創(chuàng)建人員樹(shù)的實(shí)現(xiàn)代碼分享到腳本之家平臺(tái),需要的朋友參考下吧2017-09-09JQuery 文本框回車(chē)跳到下一個(gè)文本框示例代碼
回車(chē)執(zhí)行跳到下一個(gè)文本框,在本文通過(guò)jquery簡(jiǎn)單實(shí)現(xiàn)下,需要的朋友可以參考下2013-08-08淺談jQuery頁(yè)面的滾動(dòng)位置scrollTop、scrollLeft
官方文檔的解釋有點(diǎn)含糊,其實(shí)換個(gè)角度就很容易理解了,scrollTop獲取的是內(nèi)部元素超出外部容器的高度。 例如:$('window').scrollTop()獲取的就是當(dāng)前這個(gè)頁(yè)面超出窗口最上端的高度,scrollLeft與此同理2015-05-052012年開(kāi)發(fā)人員的16款新鮮的jquery插件體驗(yàn)分享
jQuery的是一個(gè)多瀏覽器的Javascript集合,以輕松地簡(jiǎn)化了客戶(hù)端腳本的HTML;使用這些插件方法可以創(chuàng)建高效強(qiáng)大的網(wǎng)頁(yè)和Web程序2012-12-12淺談ajax在jquery中的請(qǐng)求和servlet中的響應(yīng)
下面小編就為大家分享一篇淺談ajax在jquery中的請(qǐng)求和servlet中的響應(yīng),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-01-01jQuery Div中加載其他頁(yè)面的實(shí)現(xiàn)代碼
在做一個(gè)表單簽核系統(tǒng)時(shí),需在要簽核頁(yè)面中將表單內(nèi)容(事先做好的PHP頁(yè)面)顯示出來(lái),于就是想能不能利用Ajax技術(shù)把這個(gè)事先做好的頁(yè)面嵌入到簽核頁(yè)面中呢?2009-02-02