Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   $('li').get(0) не является объектом? (https://javascript.ru/forum/jquery/30139-%24-%27li%27-get-0-ne-yavlyaetsya-obektom.html)

ololosh 25.07.2012 13:11

$('li').get(0) не является объектом?
 
Конструкция
$('ul li').get(0)

или
$('ul li')[0]

должна возвращать объект, содержащий первый элемент <li> в списке <ul>, так ведь?
Тащем-то, typeof говорит, что $('ul li').get(0) - это как раз таки объект. Тогда почему я не могу применить какой-нибудь метод к $('ul li').get(0)?
Например, след. конструкция выдает ошибку
$('ul li').get(0).hide(1000);

Вопрос: почему ошибка, ведь $('ul li').get(0) возвращает объект jQuery? Почему тогда к нему нельзя применить метод hide()?

zlodeeev 25.07.2012 13:53

Его надо тогда тоже заключать в скобки $() наверно, попробуй.

vadim5june 25.07.2012 14:00

Цитата:

Сообщение от ololosh (Сообщение 191518)
Вопрос: почему ошибка, ведь $('ul li').get(0) возвращает объект jQuery? Почему тогда к нему нельзя применить метод hide()?

нет DOM объект
попробуй так
$($('ul li').get(0)).hide(1000);

ololosh 25.07.2012 14:41

Да, так действительно заработало.
Но я читал, что почти каждый метод jquery возвращает DOM объект в контексте кторого он (этот метод) был вызван и благодаря этому можно писать цепочки из методов типа такого:
$(selector).hide().show().fadeTo().css() итд. Каждый метод будет вызываться в контексте $(selector).
Но получается, что метод .get() не возвращает DOM объект и по этому нужно снова создать DOM объект, вот так вот:
$($('ul li').get(0))

что бы к нему можно было применить метод hide() или какой нибудь другой метод обьекта джейквери.
Я правильное умозаключение сделал? :)

vadim5june 25.07.2012 14:55

да

walik 25.07.2012 16:56

$('ul li').eq(0).hide();


.get() - Возвращает DOM объект.

.eq() - Возвращает Jquery объект

vadim5june 25.07.2012 17:02

Цитата:

Сообщение от walik (Сообщение 191602)
$('ul li').eq(0).hide();


.get() - Возвращает DOM объект.

.eq() - Возвращает Jquery объект

Я уж жквери давно не пользуюсь-забыл про этот метод

Gvozd 25.07.2012 22:47

Цитата:

Сообщение от vadim5june
Я уж жквери давно не пользуюсь-забыл про этот метод

И поэтому лучше задать вопрос на форуме, потратив время нескольких человек, чем пойти и посмотреть в документации?


Часовой пояс GMT +3, время: 08:32.