如何多次应用 setInterval 循环
这里完全是新手。我有一个脚本,它使用 setInterval 来过滤列表,并每 2 秒向每个列表项添加/删除一个类。
如何编辑此脚本以便可以为每个 setInterval 循环应用不同的时间?
例如:对于第一个列表项,我希望 setInterval(或延迟)为 3 秒,第二个列表项我希望它为 1.5 秒,依此类推,直到列表完成...我需要每个循环的计时不同。怎么能做到这一点呢? 非常感谢您的帮助。
$(function() {
var $list = $('#animation li');
$list.filter(':first').addClass('go');
setInterval(function() {
if( $list.filter('.go').index() !== $list.length - 1 ) {
$list.filter('.go').removeClass('go').next().addClass('go');
}
else {
$list.removeClass('go').filter(':first').addClass('go');
}
}, 2000);
total novice here. I have a script that uses setInterval to filter through a list and adds/removes a class every 2 seconds to each list item.
How could I edit this script so that I can apply different times for each setInterval loop?
For instance: For the first list item, I want the setInterval (or the delay) to be 3 seconds, the second list item I want it to be 1.5 seconds, and so on and so on until the list is finished... I need each loop to be timed differently. How can do this? Your help is greatly appreciated.
$(function() {
var $list = $('#animation li');
$list.filter(':first').addClass('go');
setInterval(function() {
if( $list.filter('.go').index() !== $list.length - 1 ) {
$list.filter('.go').removeClass('go').next().addClass('go');
}
else {
$list.removeClass('go').filter(':first').addClass('go');
}
}, 2000);
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
非常原始的例子,但只是展示方法:
Very primitive example, but just showing methodology:
在 setInterval 内调用 setInterval。
calling setInterval within setInterval.