隨着jQuery.each()
應用功能的元件,我可以迭代通過陣列的成員:jQuery的:在同一時間
// This is NOT what I am looking for.
$('.example a').each(function() {
// do a lot of things here
$(this).css('color', 'red');
});
然而,我需要一個函數應用於jQuery的數組本身,而不是其成員。所以我寫了一個小插件來做到這一點:
$.fn.all = function(callback) { return callback.call(this); }
$('.example a').all(function() {
// do a lot of things here
$(this).css('color', 'red');
});
請注意,在上面的功能,this
將被設置爲元素的集合 - 這正是我需要。
現在我確信jQuery應該有一個優雅的方式來做到這一點,但我還沒有找到任何文檔或谷歌搜索。
是否有可能,如果是的話,如何在不使用自定義插件的情況下實現這一目標?
更新:我不能直接做$('.example a').css('color', 'red');
。我在函數中有數十個計算,所以我必須使用類似於我寫的插件的東西。 我要求回電。正確的答案必須提供類似於自定義函數的回調。
什麼是「應用功能,jQuery的數組本身」的意思是,到底是什麼? – Oriol
@Oriol他可能意味着整體而不是一個一個。 –
.each通過迭代將回調應用於數組中的每個成員,所以「this」將是該數組的成員。 我需要的是「this」將是數組本身,而不是其成員。請閱讀更新後的問題。 –