2013-05-16 249 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