簡體   English   中英

Mojo SDK-設置計時器

[英]Mojo SDK - set a timer

我正在為Palm Pre構建應用程序。

我有一個簡單的問題:在經過一定時間后,如何為某些代碼運行設置計時器?

我嘗試使用常規的舊javascript setTimeout ,但是似乎不起作用。

這是我嘗試過的:

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

似乎都沒有工作。 我該怎么做?

事實證明Mojo使用了原型javascript框架。

我可以使用以下方法解決此問題:

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

讓我震驚的一件事是, delay方法更改了this的值,因此delay函數一定不要期望this與直接調用它相同。

@TM:感謝您指出Prototype的bind()方法。 昨天我在setTimeout()問題上苦苦掙扎,最終像您指出的那樣使用Prototype的delay()方法,然后今天早晨,我在Mitch Allen的“ Palm webOS”書中看到他正在this.controller上調用setTimeout()。 .window對象,如下所示:
this.controller.window.setTimeout(this.someFunction.bind(this), someNumberOfMilliseconds);

如果我沒有一直在尋找確切的解決方案,我想我不會注意到this.controller.window的使用,現在我注意到書中使用this.someFunction.bind(this)的幾個地方,盡管他從未解釋過會做什么。 現在我知道!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM