Код за маркиране:
<div id="elements">
<div>
<a href="#">text</a>
<a href="#">text</a>
<a href="#">text</a>
</div>
<div>
<a href="#">text</a>
<a href="#">text</a>
<a href="#">text</a>
</div>
<div>
<a href="#">text</a>
<a href="#">text</a>
</div>
</div>
Моля, кажете ми как мога да получа масив от всички елементи на div
, така че по-късно е възможно да се обърне към множество опции?
Като:
divs[0]
links[1]
Отговори:
6 за отговор № 1var divs = $("#elements div");
var links = $("#elements div a");
- Ако искате елементите на DOM, тогава ще имате достъп до тях с типа на масив
divs[0]
илиlinks[2]
. - Ако искате да получите конкретния обект jQuery, можете да получите достъп до тях
divs.eq(0)
илиlinks.eq(1)
.
6 за отговор № 2
$("#elements div").eq(0) // first div
$("#elements div a").eq(1) // second anchor in group of divs
Без .eq()
имате колекция от елементи, .eq
просто отделя елементите.
1 за отговор № 3
wrapper = document.getElementById("elements");
divs = wrapper.getElementsByTagName("div");
links = [];
for (i = 0; i < divs.length; i++) {
links[i] = divs[i].getElementsByTagName("a");
}
divs сега ще бъде масив от divs вътревашите "елементи" div. Връзки сега е двуизмерен масив, където първият индекс се отнася за div вътре във вашите "елементи" div, а вторият индекс се отнася за "a" тагове вътре в този div.
links[2][1]
ще се отнася до елемента, означен по-долу:
<div id="elements">
<div>
<a href="#">text</a>
<a href="#">text</a>
<a href="#">text</a>
</div>
<div>
<a href="#">text</a>
<a href="#">text</a>
<a href="#">text</a>
</div>
<div>
<a href="#">text</a>
<a href="#">text</a> //this one
</div>
</div>
1 за отговор № 4
Или също така, и аз вярвам, че това е по-точно това, което сте поискали:
$ ("# елемента div: eq (0) a: eq (1)")
0 за отговор № 5
$("#elements a")
$("div a")
or $("a")
0 за отговор № 6
виждам https://api.jquery.com/toArray/
$( "li" ).toArray()
Това работи чудесно в подобни случаи
$( "li" ).toArray().each( function(li) {
console.log("do something with this list item", li);
})
или ако наистина искате
$( "li" ).toArray()[0]