如何写一个`is_a_last_of_b(a,b)`来检查`a`是否是`b`的最后一个孩子

时间:2011-09-27 06:03:54

标签: jquery

a = $('div:first');
b = $('div');

b可能包含多个DOM元素。

a只包含1个元素。

我如何知道ab的最后一个元素?

我试过了a == $('div:last'),但在我的测试后它出了问题。

如果ab的元素,我如何在a内获得b的兄弟?

澄清

问题是如何编写is_a_last_of_b(a, b)来检查ab的最后一个孩子。

如果ab的直接孩子,那么如何写next_sibling(a)来返回a的下一个兄弟(只有一个)?

3 个答案:

答案 0 :(得分:1)

可以试试这个

var elements = $("div");
var lastElement = elements.filter(":last");
var firstElement = elements.filter(":first");

对于兄弟姐妹,请查看jquery siblings

答案 1 :(得分:0)

也许您需要last-selectorsiblings

答案 2 :(得分:0)

好的,为了比较jquery对象,您可以查看其他一些问题,例如:jQuery object equality

基本上,在您只想检查一个项目的情况下,您可以这样做:

var a = $("div:first"),
    b = $("div");

if (b[b.length - 1] === a[0]) {}

// or

if (b.last()[0] = a[0]) {}

然后,获得元素的下一个兄弟:

b = b.next();