Javascript 请勿在钛合金中使用不能正常工作的线圈
我认为这应该是一件容易的事,但我已经不知所措了 我创建了一个应用程序,根据延迟“设置间隔”在钛合金屏幕上循环显示图像 它无限期地循环图像,但我想添加一个函数,用户可以在一个时间延迟(循环中的一组迭代次数)或按下按钮(“停止”)时退出循环 此代码用于调用一个函数,该函数从my mamp服务器中提取图像,并在钛合金中创建一个新窗口,在该窗口中显示图像:Javascript 请勿在钛合金中使用不能正常工作的线圈,javascript,titanium,titanium-alloy,Javascript,Titanium,Titanium Alloy,我认为这应该是一件容易的事,但我已经不知所措了 我创建了一个应用程序,根据延迟“设置间隔”在钛合金屏幕上循环显示图像 它无限期地循环图像,但我想添加一个函数,用户可以在一个时间延迟(循环中的一组迭代次数)或按下按钮(“停止”)时退出循环 此代码用于调用一个函数,该函数从my mamp服务器中提取图像,并在钛合金中创建一个新窗口,在该窗口中显示图像: setInterval(function(){call();}, 3000); 但是,当我试着更进一步时,它不起作用 var keepGoing;
setInterval(function(){call();}, 3000);
但是,当我试着更进一步时,它不起作用
var keepGoing;
do {
setInterval(function(){call();}, 3000);
}
while (keepGoing);
function stop(e){
return keepGoing = false;
}
从我的xml调用函数“stop”,如下所示:
<Button id="stop" onClick="stop">stop</Button>
使其循环一次,然后停止工作
任何想法都将不胜感激 您需要这样的图案:
function loop () {
call();
if (keepGoing) {
setTimeout(loop, 3000);
}
}
loop();
顺便说一句,为什么下面的代码不起作用是采访中的一个热门问题(我被问了好几次)
诀窍是,传递到这里的
setInterval
函数有时会在3s后调用,但前提是主线程空闲。它永远不会是自由的——它在做无限循环。你需要这样的模式:
function loop () {
call();
if (keepGoing) {
setTimeout(loop, 3000);
}
}
loop();
顺便说一句,为什么下面的代码不起作用是采访中的一个热门问题(我被问了好几次)
诀窍是,传递到这里的
setInterval
函数有时会在3s后调用,但前提是主线程空闲。它永远不会是自由的——它在做无限循环。你需要这样的模式:
function loop () {
call();
if (keepGoing) {
setTimeout(loop, 3000);
}
}
loop();
顺便说一句,为什么下面的代码不起作用是采访中的一个热门问题(我被问了好几次)
诀窍是,传递到这里的
setInterval
函数有时会在3s后调用,但前提是主线程空闲。它永远不会是自由的——它在做无限循环。你需要这样的模式:
function loop () {
call();
if (keepGoing) {
setTimeout(loop, 3000);
}
}
loop();
顺便说一句,为什么下面的代码不起作用是采访中的一个热门问题(我被问了好几次)
诀窍是,传递到这里的
setInterval
函数有时会在3s后调用,但前提是主线程空闲。它永远不会是自由的——它在做无限循环。一旦你开始setInterval
它就会进入无限循环。如果要停止setInterval
,只需调用clearInterval
var interval;
interval = setInterval(function(){call();}, 3000);
function stop(e){
clearInterval(interval);
}
这就完成了我的工作。一旦开始
setInterval
它将进入无限循环。如果要停止setInterval
,只需调用clearInterval
var interval;
interval = setInterval(function(){call();}, 3000);
function stop(e){
clearInterval(interval);
}
这就完成了我的工作。一旦开始
setInterval
它将进入无限循环。如果要停止setInterval
,只需调用clearInterval
var interval;
interval = setInterval(function(){call();}, 3000);
function stop(e){
clearInterval(interval);
}
这就完成了我的工作。一旦开始
setInterval
它将进入无限循环。如果要停止setInterval
,只需调用clearInterval
var interval;
interval = setInterval(function(){call();}, 3000);
function stop(e){
clearInterval(interval);
}
这已经完成了我的工作