我知道$('.test').each(testFunction);
爲網頁上所有匹配的.test
元素調用testFunction
。我如何告訴它只做第一個匹配的。使用jQuery在第一個匹配選擇元素上執行一個函數
我試過$('.test:first').each(testFunction);
它似乎仍然運行所有的人。
我知道$('.test').each(testFunction);
爲網頁上所有匹配的.test
元素調用testFunction
。我如何告訴它只做第一個匹配的。使用jQuery在第一個匹配選擇元素上執行一個函數
我試過$('.test:first').each(testFunction);
它似乎仍然運行所有的人。
:first
應按照您預期http://jsfiddle.net/guard/r5nUZ/
嘗試
$(".test").first();
這應該選擇從該列表僅僅是第一要素。如果你只是試圖在一個元素上運行它,你爲什麼要使用它?
只是做
testFuntion($(".test").first());
我想你應該可以使用。首先()函數來代替。每次的()。看看文檔http://api.jquery.com/category/traversing/,這似乎是選擇的功能。
(function($) {
$.fn.testFuntion = function() {
return each(function() {
console.log(this);
});
}
})(jQuery);
//$('.test:first').testFuntion();
或
$('.test').each(function(i) {
if (i == 0) {
testFuntion();
}
});
謝謝。我想我還有另一個問題讓我覺得它仍然在運行。該工具非常棒。 –
是的,jsfiddle非常適合創建最簡單的示例,並將它們發佈到您的SO問題=) – Guard