为什么这段代码(每个jquery)在1之后停止?

为什么这段代码(每个jquery)在1之后停止?,jquery,Jquery,在我的站点顶部有一个名为notifications的div。 我想在文本数组中循环,每30秒在div中一个接一个地显示每个值 下面我写的代码不起作用,我已经试了好几次想弄明白,但都没用 var my_array = ["first text", "second text", "third text"]; jQuery.each(my_array, function(index, value) { jQuery('.notifications').replaceWith(value).d

在我的站点顶部有一个名为notifications的div。 我想在文本数组中循环,每30秒在div中一个接一个地显示每个值

下面我写的代码不起作用,我已经试了好几次想弄明白,但都没用

var my_array = ["first text", "second text", "third text"];

jQuery.each(my_array, function(index, value) {
    jQuery('.notifications').replaceWith(value).delay(500);
});
该方法用于在动画队列中提供延迟,因此不能将其与方法一起使用。其次,将使用DOM树中的新元素替换整个元素,因此在第二次迭代中,
jQuery('.notifications')
将不选择任何内容,因为元素已经被替换

要使其工作,请使用方法,而不是替换整个元素,只需使用方法更新元素的内容即可

var my_数组=[“第一个文本”、“第二个文本”、“第三个文本”];
//计数变量
var i=0;
//初始化间隔并缓存返回id
//以后再清除间隔
var inter=设定间隔(变化,500);
//调用函数以最初执行
改变();
函数更改(){
//更新内容
jQuery('.notifications').text(my_数组[i++]);
//检查计数是否达到数组长度
if(i==my_array.length)
//如果达到数组长度,则清除间隔
间隔时间;
}

该方法用于在动画队列中提供延迟,因此您不能将其与方法一起使用。其次,将使用DOM树中的新元素替换整个元素,因此在第二次迭代中,
jQuery('.notifications')
将不选择任何内容,因为元素已经被替换

要使其工作,请使用方法,而不是替换整个元素,只需使用方法更新元素的内容即可

var my_数组=[“第一个文本”、“第二个文本”、“第三个文本”];
//计数变量
var i=0;
//初始化间隔并缓存返回id
//以后再清除间隔
var inter=设定间隔(变化,500);
//调用函数以最初执行
改变();
函数更改(){
//更新内容
jQuery('.notifications').text(my_数组[i++]);
//检查计数是否达到数组长度
if(i==my_array.length)
//如果达到数组长度,则清除间隔
间隔时间;
}


.delay()
暂停动画
.replaceWith()
不是动画。引用的帖子不会使用each()在数组中循环。。。所以这不是回答我问题的有效参考。你有研究过吗?关于做你需要做的事情,有很多问题already@Ryan副本解释了代码的错误,并为您尝试执行的操作提供了替代解决方案
.each()
与问题无关。即使我删除延迟部分,它仍会在第一个部分停止,因此我不明白。如果它没有循环通过数组中的每个元素,则每个都不是问题的一部分。
.delay()
暂停动画
.replaceWith()
不是动画。引用的帖子不会使用each()在数组中循环。。。所以这不是回答我问题的有效参考。你有研究过吗?关于做你需要做的事情,有很多问题already@Ryan副本解释了代码的错误,并为您尝试执行的操作提供了替代解决方案
.each()
与问题无关。即使我删除延迟部分,它仍会在第一个部分停止,因此我不明白。如果每个延迟部分没有在数组中的每个元素中循环,则它不是问题的一部分。