【发布时间】:2012-05-12 14:03:08
【问题描述】:
我有一棵这样的厄运树:
ul #navigation
li .active
ul
li.active_li
li
li
/ul
li
ul
li.active_li
li
li
/ul
/ul
我想在属于 li 的 ul 中找到类为 active_li 的 li,该类为 active。 :)
我们可以看到有 2 个li 的类为active_li。我只想要第一个
类似:$('#navigation').find('li.active').find('li.active)li').doSomething();
这个选择器似乎不起作用
有什么想法吗?
【问题讨论】:
-
jQuery具有与 CSS 相同的后代/祖先选择器概念 .. 这将起作用: $('#navigation li.active_li');会不会是父级与下划线? -
@tandu:我认为可以肯定地说任何 CSS 选择器都可以用作 jQuery 选择器。
-
@Blender 不是 .. jQuery 没有 CSS 的一些伪类选择器的概念,不支持媒体查询等(不是那些有意义的),也不支持CSS 4 选择器(不完整且未使用)。 CSS 肯定与 jQuery 选择器不兼容——不是你说的那样。
-
@tandu:jQuery 的选择器引擎会很高兴地解析 大多数 CSS 选择器。有一些例外(主要是晦涩的伪类,但逻辑上不属于 jQuery 代码):ejohn.org/blog/selectors-that-people-actually-use
-
@Blender 该链接似乎与我们所谈论的内容无关.. jQuery 没有实现
:hover、:visited或:active——我不会称这些为晦涩难懂的,我不会说它们在逻辑上不属于 jQuery 代码——如果它们不属于,为什么要实现:focus作为选择器?
标签: javascript jquery find contains belongs-to