如何检查元素是否是最后一个兄弟?
对于连续的最后一个单元格,我想执行不同的操作。
这不起作用:
$('td').each(function(){
var $this = $(this);
if ( $this === $this.parent().last('td') )
{
alert('123');
}
})
如果我删除.parent()
,也不会。
答案 0 :(得分:301)
这更优雅,对我有用:
if($(this).is(':last-child'))
{
alert('123');
}
答案 1 :(得分:12)
尝试
$('tr td:last-child').each(function(){
var $this = $(this);
alert('123');
});
答案 2 :(得分:7)
这里你去了,但只有你想对其他tds做些什么才有意义,其他明智的做法是使用其他一个答案中描述的 last-child 方法。
$('td').each(function(){
var $this = $(this);
if ($this.index() == $this.siblings().length-1)
{
alert('123');
}
})
答案 3 :(得分:4)
你可以用这种方式编码。
var $this = $(this);
if($this.index()==$this.siblings().size()-1)
{
alert("It's the last.");
}
答案 4 :(得分:0)
如果要选择多个具有相同点的不同标签元素(例如:所有 data-foo 属性定义的标签,例如div,输入,文本区域等),则可以请遵循以下代码:
var elements = $("*[data-foo]");
elements.each(function (){
..
..your code
..
if (elements.index(this) == elements.length - 1) {
..you are at the end, do something else
}
})