我有这个缩略图列表,并希望将图像路径(源)推入数组:tn_array
<ul id="thumbnails"> <li><img src="somepath/tn/004.jpg" alt="fourth caption" /></a></li> <li><img src="somepath/tn/005.jpg" alt="fifth caption" /></a></li> <li><img src="somepath/tn/006.jpg" alt="sixth caption" /></a></li> </ul>
解决方法
您可以使用
map()
更直接地创建src属性数组:
var tn_array = $("#thumbnails img").map(function() { return $(this).attr("src"); });
编辑:tn_array是一个对象,而不是一个严格的JavaScript数组,但它将作为一个数组。例如,这是合法的代码:
for (int i=0; i<tn_array.length; i++) { alert(tn_array[i]); }
然而,您可以拨打get()
,这将使其成为一个严格的阵列:
var tn_array = $("#thumbnails img").map(function() { return $(this).attr("src"); }).get();
你怎么说差异?呼叫:
alert(obj.constructor.toString());
第一个版本将是:
function Object() { [native code] }
第二:
function Array() { [native code] }