Dex*_*olf 4 javascript jquery animation
我用jQuery 1.6的动画遇到了一些问题.我用jQuery 1.5解决了它.
在我的项目中,我曾经setInterval()
制作自定义徽标滑块.动画一两个即时(不是同时)激发.当我在页面上时,一切顺利,但是当我继续其他选项卡并在我的页面项目中回归(一分钟,两个左右)之后,一切都变得疯狂......
好的,我有一个答案可以使用Queue()
.我可以用这种方法实现同样的目的吗?
我已经预订了Manning jQuery in Action,并没有立即激发动画Queue()
.
引用一些答案:
由于requestAnimationFrame()的性质,您不应该使用setInterval或setTimeout循环对动画进行排队.
mar*_*tin 12
通常,setInterval == BAD和setTimeout == GOOD用于动画.
如nnnnnn所述,setInterval将尝试播放追赶:
某些浏览器可能会对所有内容进行排队,然后在标签再次获得焦点时尝试赶上
循环animate()的最佳方法是通过递归调用,例如:
var myTimeout;
var myAnimation = function () {
$('#myID').animate({
[propertyKey]:[propertyValue]
}, 5000, function() {
myTimeout = setTimeOut(myAnimation, 1000);
});
}
Run Code Online (Sandbox Code Playgroud)
注意如何myTimeout举行的范围之外myAnnimation允许停止动画的能力
clearTimeout(myTimeout);
Run Code Online (Sandbox Code Playgroud)
您可以连接到window.unload事件.