2013-05-16 256 views
0

有沒有什麼辦法可以做到這一點,以避免必須做.eachfor循環?避免循環

$('.backstretch-frame').backstretch(function(){ return $(this).data('img'); }); 

基本上試圖拉集合中的特定對象的屬性的內容來實例化。

+0

這不是很清楚你想要的結果是什麼。你在尋找一個字符串數組,它是每個'.backstrecth-frame'的'img'數據屬性嗎? –

+0

簡而言之,我想使用內聯getter將'backstretch()'應用於'.backstretch-frame'的所有實例,而不必設置for循環或使用jQuery的'.each()'功能。 – probablyup

+1

很抱歉,'.data'只能爲一個元素返回一個值。你爲什麼不想使用'.each'?這正是你需要的東西。 – Blazemonger

回答

1

喜歡還是不喜歡,如果你想獲得一切爲.backstretch-frame每個實例.data('img')值,你需要一個.each循環:

var temp_array = []; 
$('.backstretch-frame').each(function() { 
    var t = $(this).backstretch(function() { 
     return $(this).data('img'); 
    }); 
    temp_array.push(t); 
}); 
// now temp_array contains all the values of .data('img'), in order