我的功能是在列表中获取图像的宽度,我需要将它们全部计算在一起。当我在foreach中执行它时会带来一些奇怪的数字。
这个函数正在增加每个元素的宽度,我真的不关心每个元素,只是它们在一起的宽度......
var listWidth = [];
$('#thumbContainer ul li').each(function(){
listWidth.push($(this).width());
});
答案 0 :(得分:5)
不确定你尝试了什么,但这应该有效:
var listWidth = 0;
$('#thumbContainer ul li').each(function(){
listWidth += $(this).width();
});
alert( listWidth );
......或者这个:
var listWidth = 0;
$('#thumbContainer ul li').width(function(i,wid){ listWidth += wid; });
alert( listWidth );
答案 1 :(得分:2)
我喜欢用这个:
Array.prototype.addAll = function() {
/** Adds all the elements in the
specified arrays to this array.
*/
for (var a = 0; a < arguments.length; a++) {
arr = arguments[a];
for (var i = 0; i < arr.length; i++) {
this.push(arr[i]);
}
}
}