javascript - do while 循环在 Titanium 中无法正常工作

标签 javascript titanium titanium-alloy

我认为这应该是一件容易的事,但我束手无策。

我创建了一个应用程序,可以根据延迟“setInterval”在 Titanium 中循环显示图像。

它无限期地循环图像,但我想添加一个函数,用户可以在时间延迟(循环中的迭代次数)或按下按钮时退出循环(“停止”)。

此代码用于调用一个函数,该函数从我的 mamp 服务器中提取图像并在 Titanium 中创建一个显示该图像的新窗口:

setInterval(function(){call();}, 3000);

但是当我尝试更进一步时,它不起作用。

var keepGoing;
do {
setInterval(function(){call();}, 3000);
}
while (keepGoing);

function stop(e){
return keepGoing = false;
}

函数“stop”是从我的 xml 中调用的,如下所示:

<Button id="stop" onClick="stop">stop</Button>

我什至尝试了以下方法但无济于事:

do {
setInterval(function(){call();}, 3000);
}
while (0 > 1);

这样它会循环一次然后停止工作。

如有任何想法,我们将不胜感激!

最佳答案

一旦启动setInterval,它将进入无限循环。如果您想停止 setInterval,只需调用 clearInterval

var interval;

interval = setInterval(function(){call();}, 3000);

function stop(e){
    clearInterval(interval);
}

这已经完成了我的案例。

关于javascript - do while 循环在 Titanium 中无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23919361/

相关文章:

javascript - 如何在 dgrid 中使用 dnd 实现行重新排序

javascript - 如何在 Appcelerator Titanium 中使用 CoffieeScript 而不是 JavaScript

iOS 后台服务第一次没有运行

android - 在 Ubuntu 中设置 TITANIUM 时出错?

javascript - 滑动手势不滑动容器

facebook - Titanium facebook模块单线程

javascript - 根据 Grunt 的说法,JSDoc 不正确

javascript - React.js ant设计范围过滤器,带有开始和结束日期错误

javascript - 在页面上放大两次后 Canvas 覆盖消失

iphone - 添加导航按钮在钛合金中第一次不起作用