0

我正在尝试添加到此代码中,以便在未单击按钮 10 秒后自动运行 button.g == 1 的字符串。

  {
    if(button.g == 0)
    {
        f.a(parent);
        AutoJoin.instance.resetCache();
    }
    if(button.g == 1)
    {
        AutoJoin.instance.screen = new AutoJoinScreen(parent, info);
        f.a(AutoJoin.instance.screen);
    }
    if(button.g == 2)
        f.a(new PropertiesScreen(this, info.ip));
}
4

1 回答 1

0

您可以使用setTimeout“延迟”一个动作:

setTimeout(function() { console.log('I'm 10 secs later'); }, 1000*10);

您可以中止clearTimeout这样的计时器:

var timer = setTimeout(/* .... */);
clearTimeout(timer)

button.g == 1在您的示例中,您可以启动超时,如果单击任何按钮,则执行逻辑并取消计时器:

将定时器设置为 10 秒:

var timer = setTimeout(1000*10, function() { 
  AutoJoin.instance.screen = new AutoJoinScreen(parent, info);
    f.a(AutoJoin.instance.screen);
 })

点击例程:

clearTimeout(timer);

if(button.g == 0) {
    f.a(parent);
    AutoJoin.instance.resetCache();
} 
else if if(button.g == 1) {
    AutoJoin.instance.screen = new AutoJoinScreen(parent, info);
    f.a(AutoJoin.instance.screen);
}
else if(button.g == 2) {
    f.a(new PropertiesScreen(this, info.ip));
}
于 2013-09-15T06:43:04.707 回答