久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

轉(zhuǎn) jQuery中is和hasClass的用法

 _小女子_ 2014-03-06
在jQuery中,我們可以使用兩種方法來檢查一個元素是否具有某些類名,,這兩種方法都具有相同的功能,。

.hasClass("className"):有關(guān).hasClass()方法可以查閱jQuery API——hasClass()
.is(".className"):有關(guān).is()方法可以查閱jQuery API——is()

下面我們先來簡單看一下他們的用法

一、.hasClass()

hasClass()方法是用來檢查被選擇的元素是否包含指定的class名,其語法:

$(selector).hasClass("className");//其中class是必須的值,,規(guī)定需要在指定元素中查找的類名。
hasClass()也可以同時寫多個class但他們之前用空格隔開,,如下:
$(selector).hasClass("className1 className2");
二,、.is()

is()方法也是用來檢查被選擇的元素是否包含指定的class名,其用法為:

$(selector).is(".className");
同樣is()也可以有多個類名的寫法,,如:
$(selector).is(".className,.className");  

有關(guān)于他們更詳細(xì)的用法,,大家可以查看這里:jQuery API——hasClass()jQuery API——is(),。下面我們一起來看一個實(shí)例:

如果div元素有一個類名叫"bgRed",那么我們給其加上背景色為紅色,,如明沒有這個類名,我將背景色設(shè)置為藍(lán)色,,我們一起來看代碼:

HTML Code:

<div class="bgRed">有類名"bgRed"</div>
<div>無類名“bgRed”</div>
<div>無類名“bgRed”</div>
<div class="bgRed">有類名"bgRed"</div>
<p>
 <button id="isTest">is('.bgRed')</button>
 <button id="hasClassTest">hasClass('.bgRed')</button>
 <button id="reset">reset</button>
</p>
jQuery Code:

//.is() $("#isTest").click(function(){     var $divTest = $(".demoTest div");     $divTest.each(function(){         if($(this).is(".bgRed")){             $(this).css("background-color","red");         } else {             $(this).css("background-color","blue");         }     }); });

//.hasClass() $("#hasClassTest").click(function(){     var $divTest = $(".demoTest div");     $divTest.each(function(){         if($(this).hasClass("bgRed")){             $(this).css("background-color","red");         } else {             $(this).css("background-color","blue");         }     }); });

//reset $("#reset").click(function(){     location.reload(); });

效果:

上面兩種方法最終效果都是一樣的,。但從性能的角度來說,hasClass()要比is()更快,,我們來做一個測試:

function usingIs(){     for(var i=0; i<10000;i++){         $("div#testDiv").is(".test");     } } function usingHasClass(){     for(var i=0; i<10000;i++){         $("div#testDiv").hasClass("test");     } }

usingIs(); usingHasClass();

結(jié)果是:usingIs()用時3191.663ms,而usingHasClass()用時2362.523ms,。你也可以在 這里改變測試條件進(jìn)行測試。

最后在總結(jié)一下:

雖然.is()和.hasClass()兩種方法都能用來檢查一個元素是否具有某些特定的 類名,,但性能上來說,,.hasClass()方法要更強(qiáng),所以在實(shí)際運(yùn)用中我們可以盡量使用.hasClass()方法來檢查一個元素是否具有某些特定的 類名,。換句簡單的話說:.is()和.hasClass()功能一樣,,但.hasClass()性能方面強(qiáng)于.is()。

 

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請點(diǎn)擊一鍵舉報(bào),。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多