Что возвращается, если $ ('# id') ничего не соответствует? Я подумал, что это будет null или false или что-то подобное, поэтому я попытался проверить так:
var item = $('#item'); if (!item){ ... }
Но это не сработало.
Вы можете узнать, сколько элементов было найдено, используя:
$('selector').length
Чтобы проверить, не найдено ли ни одного элемента, используйте:
var item = $('#item'); if (item.length == 0) { // ... }
Хотя $('selector').length отлично подходит для определения количества объектов, которым соответствует ваш селектор, он на самом деле совершенно не нужен. Особенность jQuery в том, что все функции на основе селектора используют длину внутренне, поэтому вы можете просто сделать $(selector).hide() (или что-то еще), и для пустого набора не требуется никаких действий.
$(selector).hide()
Объект jQuery, не содержащий узлов DOM.
Вы должны быть в состоянии использовать
var item = $('#item'); if (!item[0]){ ... }
для проверки вашего существования.
Псевдонимом атрибута длины является метод size (). Таким образом, вы можете запросить:
$ ( "селектор"). Размер ()
чтобы увидеть, сколько элементов соответствует.