这是什么意思:“jQuery(’> li’,this)”
我想弄清楚这个jQuery插件是如何工作的: http : //codeasily.com/jquery/multi-column-list-with-jquery
在插件中,开头就有这一行:
if(jQuery('> li', this)) {
我知道
ul > li
意思是:它意味着选择直接父亲是ul的所有li。 但是’li’是什么意思? 我跑了:
$('> li')
但它回来了
[]
即使我在页面上有大量嵌套的无序列表HTML。
不要使用它。 文档建议您不要使用at,因为它很快就会被弃用。
来自http://api.jquery.com/child-selector/
注意:
$("> elem", context)
选择器将在以后的版本中弃用。 因此不鼓励使用其替代选择器。
但要回答,它有效地使用从中调用选择器的元素作为子选择器的左手操作数。
jQuery
函数的第二个参数是上下文。
jQuery('> li', this)
是相同的:
jQuery(this).find('> li')
它与$(this).children('li')
。 它基本上是说“使用this
作为选择器的上下文( > li
)”。
它的jsut就像ul > li
除了在这种情况下你用当前的上下文替换ul
部分。 因此,无论是在该调用的范围内,您正在解析> li
到的元素。
例如:
var ele = $('ul#someId'); var list = $('> li', ele); var list2 = $('ul#someId > li'); // list is the same as list2
它将在this
元素中的直接子li
中查找li
元素,其中this
元素可以是jQuery对象或DOM元素。
选择器在this
DOM元素的上下文中查找任何直接的
子元素