Я имею этот список миниатюры и хотел бы, продвигают каналы передачи изображения (источники) в массив: 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>
Вы можете создать массив атрибутов src более непосредственно, используя map()
:
var tn_array = $("#thumbnails img").map(function() {
return $(this).attr("src");
});
Edit: 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] }
Вы можете перебрать все img
элементы:
var tn_array = Array();
$('#thumbnails img').each(function() {
tn_array.push($(this).attr('src'));
});