Я новичок в jQuery, извиняюсь, если это глупый вопрос.
Когда я использую его для поиска элемента по идентификатору, я знаю, что всегда есть одно совпадение, и для доступа к нему я бы использовал индекс [0]. Есть ли лучший способ сделать это? Например,
var gridHeader = $("#grid_GridHeader")[0];
javascript
jquery
Рубанс
источник
источник
$("#id") /* jQuery object */ != $("#id").get(0) /* DOM Object */
document.getElementById('id')
не создавайте объект jQuery только для того, чтобы его выбросить ... это ужасно расточительно, от механизма выбора до оболочки объекта, это просто излишество без уважительной причины :)document.getElementById('id')
с ,$('#id')[0]
но не подобно[0]
. Ваш комментарий о расточительности заставил меня задуматься над определением,$0 = function(id){return document.getElementById(id);}
и теперь мне нравится$0('id')
больше. Такое же количество символов, как$('#id')
, я просто хотел бы, чтобы это могло быть$#('id')
$("#grid_GridHeader:first")
тоже работает.источник
Вы можете использовать первый способ:
$('li').first()
http://api.jquery.com/first/
кстати, я согласен с Ником Крейвером - используйте document.getElementById () ...
источник
[]
и evaltrue
.При условии, что есть только один элемент:
$("#grid_GridHeader")[0] $("#grid_GridHeader").get(0) $("#grid_GridHeader").get()
... все эквивалентны, возвращая единственный базовый элемент.
Из исходного кода jQuery вы можете видеть, что
get(0)
, по сути, делает то же самое, что и[0]
подход:// Return just the object ( num < 0 ? this.slice(num)[ 0 ] : this[ num ] );
источник
http://api.jquery.com/eq/
$("#grid_GridHeader").eq(0)
источник
Вы можете использовать первый селектор.
var header = $('.header:first')
источник
Вы можете попробовать вот так:
yourArray.shift()
источник