2009-12-10 101 views
1

这里是我的标记:jQuery选择问题

<div class=container> 
    <ul> 
     <li class=record> 
      <div class=item></div> <---- I am here 
     </li> 
    </ul> 
</div> 

容器是始终存在的,但UL是可选的。 我想要做的就是让“未来父母” - 元素(从我目前的项目), 要么li.record(如果存在的话)或div .container

问题是保持层次div.container> li.record

我该如何检查? (选择UL,如果不存在选择容器)

THX

回答

3

这应该工作:

$.closest("ul, .container"); 
+0

太好了 - 谢谢! – Fuxi 2009-12-10 21:59:17

4

您可以使用通用parent方法:

$("li.record").parent("ul, div.container"); 

,将让你如果父母不匹配任何一个选择器,则直接父母或无。

OR

closest方法:

$("li.record").closest("ul, div.container"); 

这将让你在最近的祖先,即使它不是直接父..