Javascript 这个fadeIn/fadeOut jQuery代码使我的浏览器崩溃-为什么?
我为一个会议网站创建了这段代码,这是我的任务。这是一个使用window.setInterval的简单淡入淡出循环。我已经在firefox、safari和google Chrome上进行了测试。前两个脚本在一段时间后停止响应,而google chrome给了我一个提示,说脚本占用了太多内存。我的脚本的哪一部分占用了太多内存,我应该如何纠正它 由于会议网站目前用于营销,我必须恢复到备份副本。因此,我无法提供此问题的URL。然而,我将在我的虚拟站点建立后立即提供一个Javascript 这个fadeIn/fadeOut jQuery代码使我的浏览器崩溃-为什么?,javascript,jquery,Javascript,Jquery,我为一个会议网站创建了这段代码,这是我的任务。这是一个使用window.setInterval的简单淡入淡出循环。我已经在firefox、safari和google Chrome上进行了测试。前两个脚本在一段时间后停止响应,而google chrome给了我一个提示,说脚本占用了太多内存。我的脚本的哪一部分占用了太多内存,我应该如何纠正它 由于会议网站目前用于营销,我必须恢复到备份副本。因此,我无法提供此问题的URL。然而,我将在我的虚拟站点建立后立即提供一个 <span id="aler
<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();
这并不是将可能或可能不会按时完成的动画排队,而是在不断增长的队列中结束,而是在完成时触发动画循环。您当前使用的方法以线性速率增长,动画开始堆积,队列快速构建……这确保了一次只进行一个循环