我很难找出一个快速的方法来完成一个(看似)简单的任务。说我有以下的HTML:用jquery查找两个元素之间的节点数量?
<ul>
<li>One</li>
<li>Two</li>
<li id='parent'>
<ul>
<li>Three</li>
<li>
<ul>
<li>Four</li>
<li id='child'>Five</li>
</ul>
</li>
<li>Six</li>
</ul>
</li>
</ul>
,并具有以下两个元素:
var child = $("#child");
var parent = $("#parent");
在这个例子中,很明显的是:
child.parent().parent().parent().parent();
将是相同的节点“父母。但是我所遍历的列表是可变大小的,所以我需要找到一种方法来找出需要经过多少'.parent()才能到达该父节点。我总是知道孩子和父母在哪里,我只是不知道它们之间有多少'层'。
是否有任何内置的jQuery方法来做这样的事情,或者我最好的办法是递归函数获取父对象,检查父对象是否是我想要的节点,并且如果不在其父对象上调用它自己?
编辑:我可能没有足够清楚地解释我自己。我的问题是没有得到父母,我的问题是找出有多少节点之间的孩子和父母。在我上面的例子中,子节点和父节点之间有3个节点。这是我需要找到的数据。
我需要知道这个号码,因为我想使用它。 – 2009-09-07 04:41:38