【发布时间】:2013-10-16 01:45:52
【问题描述】:
我输入了一些代码来淡入和淡出一些 div,包括导航器。
我注意到一个错误,当您快速单击导航器并尝试通过向按钮发送垃圾邮件来非常快速地在 div 之间切换时,div 将被窃听,如果您检查代码,您会看到 div 正在淡入不透明度最高为 0.5,有时甚至为 0.12,然后淡出到 0.0 到 0.09 或类似的值。
这是我的代码:
$(document).ready(function(){
var currentDiv = $("#fading_divs div:first");
currentDiv.css("display","block");
var divN = $("#fading_divs div").length;
var fadeInterval;
for(i=0; i<divN; i++){
$('<span />').text(i+1).appendTo('#fade_nav');
}
$('#fade_nav span').eq(0).addClass('active');
$('#fade_nav span').click(function(){
clearInterval(fadeInterval);
$('#fade_nav span').removeClass('active').eq( $(this).index() ).addClass('active');
currentDiv.fadeOut({duration:1000,queue:false});
currentDiv = $("#fading_divs div").eq( $(this).index() );
currentDiv.fadeIn({duration:1000,queue:false});
anim();
});
function anim() {
fadeInterval = setInterval(function(){
currentDiv.fadeOut({duration:1000,queue:false});
if(currentDiv.next().length)
currentDiv = currentDiv.next();
else
currentDiv = currentDiv.siblings().first();
$('#fade_nav span').removeClass('active').eq( currentDiv.index() ).addClass('active');
currentDiv.fadeIn({duration:1000,queue:false});
}, 4000);
}
anim();
});
这是一个小提琴:http://jsfiddle.net/b5PfE/
尝试向导航按钮发送垃圾邮件,直到您看到 div 几乎没有淡入或淡出。
关于如何修复它的任何建议?
【问题讨论】:
标签: javascript jquery