我需要有关自动滑块动画的帮助。所以,我的问题是 - 如何在悬停事件上停止动画,但不是立即停止,而是在单独元素上的动画完全完成时停止。
我有这段代码:
$(function(){
var current_slide=1;
var set_time=2500;
$('span').css({top:'300px'});
$.timer(6000,function(timer){
switch(current_slide){
case 1:
$('span').css({top:'350px'});
$('#slideshow').stop().animate({left:'-960px',top:'0px'},{easing:'easeOutBack',duration:set_time});
current_slide=2;
$('span').delay(2500).animate({top:'300px'});
break;
case 2:
$('span').css({top:'350px'});
$('#slideshow').stop().animate({left:'-1920px',top:'0px'},{easing:'easeOutBack',duration:set_time});
current_slide=3;
$('span').delay(2500).animate({top:'300px'});
break;
case 3:
$('span').css({top:'350px'});
$('#slideshow').stop().animate({left:'-2880px',top:'0px'},{easing:'easeOutBack',duration:set_time});
current_slide=4;
$('span').delay(2500).animate({top:'300px'});
break;
case 4:
$('span').css({top:'350px'});
$('#slideshow').stop().animate({left:'0px',top:'0px'},{easing:'easeOutExpo',duration:set_time});
current_slide=1;
$('span').delay(2500).animate({top:'300px'});
break;
}
timer.reset(12000);
});
$("#slideshow").hover(function(){
$(this).stop(true,true);
});
});
问题是当我将鼠标悬停在滑块上时,动画几乎停止(跳到最后),突然而难看。可能我应该在.stop()之前使用队列,或者类似的东西。这是一个很好的例子:http ://www.sevtopolishotel.com/ Tnx 提前!