что это значит: "jQuery ('> li', this)" - PullRequest
5 голосов
/ 17 января 2012

Я пытаюсь выяснить, как работает этот плагин jQuery: http://codeasily.com/jquery/multi-column-list-with-jquery

В плагине есть строка в начале:

 if(jQuery('> li', this)) {

Я знаю, что

ul > li

означает: это означает, что нужно выбрать все li, чьим прямым родителем является ul. Но что значит «> li»? Я побежал:

$('> li')

но возвращается

[]

, хотя у меня есть множество вложенных неупорядоченных списков HTML на странице.

Ответы [ 6 ]

6 голосов
/ 17 января 2012

Не используйте его. В документах рекомендуется не использовать его, так как он скоро будет устаревшим.

С http://api.jquery.com/child-selector/

Примечание: Селектор $("> elem", context) устареет в следующем выпуске. Поэтому его использование не рекомендуется вместо использования альтернативных селекторов.


Но, чтобы ответить, он эффективно использует элемент (ы), из которого селектор вызывается как левый операнд дочернего селектора .

5 голосов
/ 17 января 2012

Второй параметр функции jQuery является контекстом.

jQuery('> li', this)

Так же, как:

jQuery(this).find('> li')
3 голосов
/ 17 января 2012

Это то же самое, что и $(this).children('li').Это в основном говорит "использовать this в качестве контекста для селектора (> li)".

1 голос
/ 17 января 2012

Селектор ищет любые непосредственные <li> дочерние элементы в контексте элемента this DOM

1 голос
/ 17 января 2012

Он будет искать элемент li в непосредственных дочерних элементах в элементе this, где this может быть объектом jQuery или элементом DOM.

1 голос
/ 17 января 2012

его jsut похож на ul > li, за исключением того, что в этом случае вы заменяете деталь ul текущим контекстом, который равен this.Итак, что бы this не входило в объем этого вызова, это элемент, который вы разрешаете > li в.

Так, например:

var ele = $('ul#someId');
var list = $('> li', ele);


var list2 = $('ul#someId > li');

// list is the same as list2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...