Javascript 这个fadeIn/fadeOut jQuery代码使我的浏览器崩溃-为什么?

Javascript 这个fadeIn/fadeOut jQuery代码使我的浏览器崩溃-为什么?,javascript,jquery,Javascript,Jquery,我为一个会议网站创建了这段代码,这是我的任务。这是一个使用window.setInterval的简单淡入淡出循环。我已经在firefox、safari和google Chrome上进行了测试。前两个脚本在一段时间后停止响应,而google chrome给了我一个提示,说脚本占用了太多内存。我的脚本的哪一部分占用了太多内存,我应该如何纠正它 由于会议网站目前用于营销,我必须恢复到备份副本。因此,我无法提供此问题的URL。然而,我将在我的虚拟站点建立后立即提供一个 <span id="aler

我为一个会议网站创建了这段代码,这是我的任务。这是一个使用window.setInterval的简单淡入淡出循环。我已经在firefox、safari和google Chrome上进行了测试。前两个脚本在一段时间后停止响应,而google chrome给了我一个提示,说脚本占用了太多内存。我的脚本的哪一部分占用了太多内存,我应该如何纠正它

由于会议网站目前用于营销,我必须恢复到备份副本。因此,我无法提供此问题的URL。然而,我将在我的虚拟站点建立后立即提供一个

<span id="alertTxt" style="text-align:center; color:#CC0000; display:none">Director of Information Technology, Network Communications, Security, Smart Metering, Operations, C-Level Executives</span>
<span id="alertTxt2" style="text-align:center; color:#CC000; display:none">This Conference is for You!</span>

<script type="text/javascript">
function animateTxt() {
  $j("#alertTxt").fadeIn(2000);
  $j("#alertTxt").delay(6000).fadeOut(1500);
  animateTxt2();
  window.setInterval("animateTxt()",22000);
}
function animateTxt2() {
  $j("#alertTxt2").delay(1500).fadeIn(2000);
  $j("#alertTxt2").delay(6000).fadeOut(1500);

}
animateTxt();
</script>
信息技术、网络通信、安全、智能计量、运营、C级主管总监
这个会议是给你的!
函数animateTxt(){
$j(“#alertTxt”).fadeIn(2000年);
$j(“#alertTxt”)。延迟(6000)。淡出(1500);
animateTxt2();
setInterval(“animateTxt()”,22000);
}
函数animateTxt2(){
$j(“#alertTxt2”)。延迟(1500)。fadeIn(2000);
$j(“#alertTxt2”)。延迟(6000)。淡出(1500);
}
animateTxt();

设置间隔用于设置重复计时器。如果在animateTxt()的末尾继续使用setInterval,那么最终将使用大量计时器。将其更改为setTimeout或将其移出函数。

您应该在完成时重新写入此项以触发,如下所示:

function animateTxt() {
 $j("#alertTxt").fadeIn(2000).delay(6000).fadeOut(1500, function() {
   $j("#alertTxt2").delay(1500).fadeIn(2000).delay(6000).fadeOut(1500,function(){
     animateTxt();
   });
 });
}
animateTxt();
这并不是将可能或可能不会按时完成的动画排队,而是在不断增长的队列中结束,而是在完成时触发动画循环。您当前使用的方法以线性速率增长,动画开始堆积,队列快速构建……这确保了一次只进行一个循环