我想创建所选元素的每个子元素的宽度数组。我试过了:
var width = $(element).children().map(function () { return this.style.width; });
但这不起作用。当我alert(width[0])
时,它会显示objectHtmlElement
而不是显示宽度。我做错了什么?
答案 0 :(得分:3)
尝试.width()
样式属性仅在设置内联样式时有效。
var widths = $(element).children().map(function () { return $(this).width(); });
答案 1 :(得分:3)
如果你想获得基本数组,你应该调用get
方法,map方法返回一个jQuery包装的数组。
由于返回值是一个jQuery包装的数组,因此get()将返回的对象用于基本数组是很常见的。
var widths = $(element).children().map(function() {
return this.style.width;
}).get();
答案 2 :(得分:1)
var obj = $('li');
var arr = $.makeArray(obj);
结果将是:
(typeof obj === 'object' && obj.jquery) === true;
jQuery.isArray(arr) === true;
答案 3 :(得分:0)
在map:
之后使用jquery width()和get()var widths = $(element).children().map(function() {
return $(this).width();
}).get();