代码之家  ›  专栏  ›  技术社区  ›  TM. Randy Simon

MojoSDK-设置计时器

  •  2
  • TM. Randy Simon  · 技术社区  · 15 年前

    我正在为Palm Pre构建一个应用程序。

    我尝试使用常规的旧javascript setTimeout ,但它似乎不起作用。

    以下是我尝试过的:

    setTimeout(this.someFunction, 3000);
    setTimeout('this.someFunction()', 3000);
    

    两个似乎都不起作用。我怎样才能做到这一点?

    2 回复  |  直到 15 年前
        1
  •  3
  •   TM. Randy Simon    15 年前

    事实证明,原型javascript框架是由Mojo使用的。

    我能够通过以下方式解决此问题:

    this.someFunction.delay(seconds, [functionArgs,]);
    

    有一件事把我绊倒了,那就是 delay 方法更改了 this ,因此延迟函数不能期望 将与直接调用它的情况相同。

        2
  •  1
  •   Daren    15 年前


    this.controller.window.setTimeout(this.someFunction.bind(this), someNumberOfMilliseconds);

    如果不是我一直在寻找这个解决方案,我想我不会注意到这个.controller.window的使用,现在我注意到书中有几个地方使用了这个.someFunction.bind(这个),尽管他从未解释过它的作用。现在我知道了!

    推荐文章