可能重复:
Chrome: timeouts/interval suspended in background tabs?
当我们保持在同一个标签页时,它可以正常运行,但是当我们更改标签时,setTimeout
会在Chrome中做出奇怪的响应。我想它与window.blur
事件有一些联系。
以下是代码:
function animate(_travel, elementID)
{
OB = document.getElementById(elementID);
getNumber = OB.style.marginLeft.replace("px", "") * 1;
ease = Math.ceil(_travel / 8);
OB.style.marginLeft = (getNumber - ease) + "px";
_travel -= ease;
if(_travel > 0) {
setTimeout("animate(" + _travel + ", '" + elementID + "')", 15);
}
}
animate(300, 'myDiv');