在做某件事之前檢查現有標記是否合理?或者jQuery正在做的事情?刪除標記之前的jQuery檢查
這裏一個samplecode
$('#my_ul li.active').removeClass('active');
或...
if( $('#my_ul li.active').length) {
$('#my_ul li.active').removeClass('active');
}
在做某件事之前檢查現有標記是否合理?或者jQuery正在做的事情?刪除標記之前的jQuery檢查
這裏一個samplecode
$('#my_ul li.active').removeClass('active');
或...
if( $('#my_ul li.active').length) {
$('#my_ul li.active').removeClass('active');
}
jQuery爲選擇返回的每個元素做循環。因此,如果數組中有零個元素,則循環出現零次。拿這個例子
HTML
<ul>
<li>Hello World</li>
</ul>
的JavaScript是
var $('li');
,將返回元素的數組,如果你控制檯登錄它,它看起來像這樣;
[<li>Hello world</li>]
因爲上面是一個數組,當jQuery循環時它會做一次。 但是,如果部分返回零的項目將不會發生循環有
$('div').removeClass(".myClass");
基本removeClass插件(這是它只是一個插件,這就是jQuery核心代碼的一部分的方式插件)
的插件會做這樣的事情;
$.each($('div), function() {
//some code to remove the class
})
希望這有助於你瞭解的jQuery
不,它沒有任何意義。它既不快也不有用。不要這樣做。
根本就
$('#my_ul li').removeClass('active');
而且不會有任何的錯誤,即使沒有這樣的元素,即使li
元素沒有active
類。
你快1秒! +1給你 – Sergio
A的內部結構非常簡單的方法,找出將是一個頁面,沒有匹配的元素上運行您的第一行代碼,看看如果你得到一個錯誤。 –
[刪除它之前檢查元素的存在是否更好?](http://stackoverflow.com/questions/11897633/is-it-better-to-check-existence-of-an-element-之前刪除它) –