Jestem nowy w jQuery, przepraszam, jeśli to głupie pytanie.
Kiedy go używam, znajduję element za pomocą id, wiem, że zawsze jest jedno dopasowanie i aby uzyskać do niego dostęp, użyłbym indeksu [0]. Czy jest lepszy sposób na zrobienie tego? Np
var gridHeader = $("#grid_GridHeader")[0];
javascript
jquery
Rubans
źródło
źródło
$("#id") /* jQuery object */ != $("#id").get(0) /* DOM Object */
document.getElementById('id')
nie twórz obiektu jQuery tylko po to, aby go wyrzucić ... to ogromnie marnotrawstwo, od silnika selektora do opakowania obiektu, to po prostu przesada bez powodu :)document.getElementById('id')
z,$('#id')[0]
ale nie podobało mi się[0]
. Twój komentarz na temat marnotrawstwa sprawił, że pomyślałem o zdefiniowaniu$0 = function(id){return document.getElementById(id);}
i teraz lubię$0('id')
bardziej.$('#id')
$#('id')
$("#grid_GridHeader:first")
działa również.źródło
Możesz użyć pierwszej metody:
$('li').first()
http://api.jquery.com/first/
btw zgadzam się z Nickiem Craverem - użyj document.getElementById () ...
źródło
[]
będzie to miało miejsce w przypadkutrue
.Przy założeniu, że jest tylko jeden element:
$("#grid_GridHeader")[0] $("#grid_GridHeader").get(0) $("#grid_GridHeader").get()
... są równoważne, zwracając pojedynczy element bazowy.
Z kodu źródłowego jQuery widać, że
get(0)
pod okładkami zasadniczo robi to samo, co[0]
podejście:// Return just the object ( num < 0 ? this.slice(num)[ 0 ] : this[ num ] );
źródło
http://api.jquery.com/eq/
$("#grid_GridHeader").eq(0)
źródło
Możesz użyć pierwszego selektora.
var header = $('.header:first')
źródło
Możesz spróbować tak:
yourArray.shift()
źródło