Javascript 如何检查它是否是最后一个元素

Javascript 如何检查它是否是最后一个元素,javascript,jquery,Javascript,Jquery,我怎样才能确认这是不是最后一次试唱?如果是,我需要删除所有类“就绪” html: ) 看看你的代码,我的理解是你想在每秒钟后显示一个div。为此,我建议采用以下方法。 首先将hidden类添加到所有divs,然后每秒将其从第一个hidden div中删除 $(函数(){ $('div').addClass('hidden'); var i=设定间隔(显示框,1000); 函数showBlock(){ var x=$(“div.hidden:first”).removeClass(“hidden

我怎样才能确认这是不是最后一次试唱?如果是,我需要删除所有类“就绪”

html:


)

看看你的代码,我的理解是你想在每秒钟后显示一个div。为此,我建议采用以下方法。 首先将
hidden
类添加到所有
div
s,然后每秒将其从第一个
hidden div
中删除

$(函数(){
$('div').addClass('hidden');
var i=设定间隔(显示框,1000);
函数showBlock(){
var x=$(“div.hidden:first”).removeClass(“hidden”);
如果($(“div.hidden”).length==0){
间隔时间(i);
}
}
});
。隐藏{
显示:无;
}

绿色
橙色
红色
绿色

橙色
查看您的代码,我的理解是您希望每秒显示一个div。为此,我建议采用以下方法。 首先将
hidden
类添加到所有
div
s,然后每秒将其从第一个
hidden div
中删除

$(函数(){
$('div').addClass('hidden');
var i=设定间隔(显示框,1000);
函数showBlock(){
var x=$(“div.hidden:first”).removeClass(“hidden”);
如果($(“div.hidden”).length==0){
间隔时间(i);
}
}
});
。隐藏{
显示:无;
}

绿色
橙色
红色
绿色

橙色
据我所知,以下解决方案必须适用于您的情况:

$(函数(){
设置间隔(显示块,1000);
函数showBlock(){
var ready_divs=$(“div.ready”).length;
var总分割=$(“分割”).长度;
if(就绪分割数!=总分割数){
if(ready_divs==0){
$(“div:first”).addClass('ready');
}否则{
$(“div.ready:last”).next('div').addClass('ready');
}
}否则{
$(“div”).removeClass('ready')
}
}
});
div{
宽度:20px;
高度:20px;
边框:1px纯红;
}
准备好了吗{
边框:3件纯蓝;
}

据我所知,以下解决方案必须适用于您的情况:

$(函数(){
设置间隔(显示块,1000);
函数showBlock(){
var ready_divs=$(“div.ready”).length;
var总分割=$(“分割”).长度;
if(就绪分割数!=总分割数){
if(ready_divs==0){
$(“div:first”).addClass('ready');
}否则{
$(“div.ready:last”).next('div').addClass('ready');
}
}否则{
$(“div”).removeClass('ready')
}
}
});
div{
宽度:20px;
高度:20px;
边框:1px纯红;
}
准备好了吗{
边框:3件纯蓝;
}


使用
.is(“:last”)
-但是当到达最后一个元素时,您希望发生什么?可能有一些方法可以改进您的逻辑。您能更详细地解释一下吗?我需要删除所有类“ready”,您到底想要什么?当最后一个元素的类为“ready”时,它会显示,在这之后,所有的元素都消失了,然后一切都将重新开始。区分实际发生的事情和您希望发生的事情似乎非常混乱。duse
是(“:last”)
-尽管当到达最后一个元素时,您希望发生什么?可能有一些方法可以改进您的逻辑。您能更详细地解释一下吗?我需要删除所有类“ready”,您到底想要什么?当最后一个元素的类为“ready”时,它会显示,在这之后,所有的元素都消失了,然后一切都会重新开始。区分实际发生的事情和您希望发生的事情似乎非常混乱
<div class="green"></div>
<div class="orange"></div>
<div class="red"></div>
<div class="green"></div>
<div class="orange"></div>
$(function() {
    setInterval(showBlock, 1000);
    function showBlock() {
        var x = $("div:first").addClass("ready");
        var c = $("div");
        $(".ready").css("display", "block");
        if (c.hasClass("ready")) {
            $(".ready:last").next().addClass("ready");
        }
    }
})