JS newbie vs Nivo Slider。
导致问题的操作:用户切换到其他标签或窗口
问题:Nivo滑块继续在后台运行。返回选项卡/窗口后,我的自定义动画(添加到jquery.nivo.slider.js
)失控。
我的简单动画示例:
$('#element').animate({"top": "0px"}, "slow");
我实际上已经找到了解决方案并将其发布给成员以改进。
谢谢!
答案 0 :(得分:0)
当你转到另一个标签时(例如通过onclick事件),你不能停止滑块,然后当你返回初始标签时继续运行吗?
$('#slider').data('nivoslider').stop(); //Stop the Slider
$('#slider').data('nivoslider').start(); //Start the Slider
答案 1 :(得分:0)
这是一个适合我的解决方案。如果我能做些什么来改善它,请告诉我。谢谢!
if (/*@cc_on!@*/false) { // check for Internet Explorer
document.onfocusin = function() {
vars.paused = false;
//Restart the timer
if(timer == '' && !settings.manualAdvance){
timer = setInterval(function(){ nivoRun(slider, kids, settings, false); }, settings.pauseTime);
}
}
document.onfocusout = function() {
vars.paused = true;
clearInterval(timer);
timer = '';
}
} else {
window.onfocus = function(){
vars.paused = false;
//Restart the timer
if(timer == '' && !settings.manualAdvance){
timer = setInterval(function(){ nivoRun(slider, kids, settings, false); }, settings.pauseTime);
}
}
window.onblur = function(){
vars.paused = true;
clearInterval(timer);
timer = '';
}
}