gpt4 book ai didi

javascript - if else 条件在 setInterval 的下一次传递后发生

转载 作者:行者123 更新时间:2023-12-03 11:08:24 25 4
gpt4 key购买 nike

我正在尝试创建一个简单的幻灯片。问题出在我的 if/else 语句上。我希望它在我的 $base === 0 时添加一个类,但它仅在确定该值为 0 后才适用。

示例,当我 console.log $base.length 时,将如下所示:1, 1, 1, 1, 0, 1。

我不希望它在声明 0 之后应用该类,但同时。不确定是什么原因造成的。 setInterval 与 if/else 是否冲突?

          <ul class="slideshow">
<li class="slideshow1 e-slide-on"></li>
<li class="slideshow2"></li>
<li class="slideshow3"></li>
<li class="slideshow4"></li>
</ul>


function slideSwitch() {
var $base = $('.slideshow li.e-slide-on');

$base.next().addClass('e-slide-on');
$base.removeClass('e-slide-on');

if ($base.length === 0 ){
$('.slideshow li:first').addClass('e-slide-on');
} else{
return;
}
}
$(function() {
setInterval( function(){slideSwitch()}, 1000 );
});

最佳答案

我认为您应该检查是否有下一个元素,而不是当前是否有。

尝试 if($base.next().length === 0)

关于javascript - if else 条件在 setInterval 的下一次传递后发生,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27722629/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com