1
我只想在div「myDiv」中包含的「a」元素上使用以下函數。包含在div中的原型選擇類
這是我一直使用至今代碼:
$$('a[class="active"]').each(function(element) {
element.removeClassName("active");
});
我只想在div「myDiv」中包含的「a」元素上使用以下函數。包含在div中的原型選擇類
這是我一直使用至今代碼:
$$('a[class="active"]').each(function(element) {
element.removeClassName("active");
});
你可以做兩種方式:
1)查找myDiv
然後用Element#select
:
$('myDiv').select('a[class="active"]').each(...);
或
2)使用ID選擇器與後代選擇與$$
:
$$('#myDiv a[class="active"]).each(...);
如果只想直接兒(未後代),你可以使用子選擇器(注意>
):
$$('#myDiv > a[class="active"]).each(...);
題外話# 1:將a[class="active"]
寫入選擇器的常用方法是a.active
,例如「$('myDiv').select('a.active').each(...);
」。
偏離主題#2:您也可以看看invoke
函數,該函數用於在Enumerable對象中的每個項目上調用相同的函數(例如,「$('myDiv').select('a[class="active"]').invoke('removeClassName', 'active');
」)。 invoke
不錯,簡短而富有表現力,但比你自己做的要慢。 (儘管如此,只有當你進入數千個元素時纔有意義。)