我有以下 jQuery 代码:
var id_atual
var temp_id
var tempo_flash = 50
var $slide_atual = $('#slider .atual')
var $slide_prox = $('#slider .ocultar')
setInterval(function(){
id_atual = $slide_atual.attr('alt')
$.post('get_banner.php', {atual: id_atual}, function(proximo){
temp_id = proximo.split(';;')
$slide_prox.attr('src', temp_id[0]).load(function(){
$slide_atual.hide('fade', tempo_flash, function(){
$slide_atual.attr('alt', temp_id[1]).attr('src', temp_id[0]).load(function(){
$slide_atual.show('fade', tempo_flash)
})
})
})
})
}, 4000)
以及以下 HTML 代码:
<div id="slider">
<img src="imagens/slider/imagen-slider.jpg" alt="1" class="atual"/>
<img src="" alt="" class="ocultar" />
</div>
.ocultar 类有一个
display: none;
vars tempo_flash 只是动画时间,文件 get_banner.php 只是为了从 mysql 数据库中获取下一个横幅。它经过测试并且工作正常。我遇到的问题是,经过一点点(4 或 5 个横幅更改)后,浏览器停止响应(对于 Firefox Chrome 和 Opera),在 IE 上我收到警报Stack overflow at line: 3
,整个页面的 javascript 停止工作。
任何帮助表示赞赏!