【问题标题】:javascript's animation with setTimout()带有 setTimeout() 的 javascript 动画
【发布时间】:2011-02-11 05:19:38
【问题描述】:

我正在阅读一本名为 Pro Javascript Techinques(John Resig) 的书 核心动画的一段代码如下

setTimeout(function () {
                elem.style['width'] = (i / 100) * fullwith + 'px';
            }, **(i + 1) * 10** );

我想知道它是否应该更改“每次超时”时间来实现它
为什么“每次超时”时间不应该相同,例如:1000,因此会闪烁 非常感谢~

【问题讨论】:

    标签: javascript animation settimeout


    【解决方案1】:

    每个 setTimeout 都会注册一个新的超时(全部从“现在”开始),该超时将相隔 10 毫秒触发,因此您确实每 10 毫秒收到一个常规脉冲,但是您提前将所有这些都排队 - 第一个超时不会触发,直到注册所有这些回调后 10 毫秒。

    当有 setInterval 时,他为什么要那样做,我不知道——也许很有趣,书里有吗?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-06-26
      • 2021-04-28
      • 1970-01-01
      • 1970-01-01
      • 2018-08-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多