Как я могу создать многомерный массив со структурой, подобной этой, для каждого li с классом sl-item
:
$imagesList = [
[1, 123, "<img src=\"/img-src/123.jpg \" />", "/photo/img-123", "image-alt "],
[2, 452, "<img src=\"/img-src/452.jpg \" />", "/photo/img-452", "image-alt "],
];
Сначала должно быть просто число массивов, 1,2,3..., вторая часть - это id
элемента li
, третий - img с img src, четвертый - URL-адрес от a
с photo-url
класса, а пятый - img alt. Моя структура такова:
<ul class="sl-img">
<li id="123" class="sl-item">
<a class="photo-url" href="/photo/img-123">
<img alt="image-alt" src="/img-src/123.jpg" >
</a>
</li>
<li id="452" class="sl-item">
<a class="photo-url" href="/photo/img-452">
<img alt="image-alt" src="/img-src/452.jpg" >
</a>
</li>
.....
</ul>
Что-то вроде этого возможно?
var result = [];
$('li').each(function(i){
var $img = $(this).find('img');
result.push([i+1, this.id, $img[0], $img.prop('src'), $img.prop('alt')]);
});
console.log(result);
Сначала я попытался использовать map()
, но, похоже, он сгладил массив.