sba*_*den 1 javascript user-interface
我有一个开始按钮,当点击时运行一个循环的功能.如何获取stopBTN.onClick以停止正在运行的循环?
https://jsfiddle.net/vduxbnkj/
startBTN.onClick = function(){ runLoop(); }
function runLoop(){
while(condition true){
getFolderContentsLoop();
}
}
function getFolderContentsLoop(){
//loop through folders & files looking for .txt file and if "finished"
delete files and folders
}
Run Code Online (Sandbox Code Playgroud)
如果您正在运行一个简单的for (..)循环,则无法通过外部影响停止此循环.一切都发生在Javascript中的同一个线程中,除非您的代码在某个时刻"结束"并将控制权返回给浏览器一段时间没有UI交互可能发生.拥有"循环"的最简单方法是通过setTimeout或setInterval:
interval = null;
startBTN.onclick = function () {
var i = 0;
interval = setInterval(function () {
console.log(i++); // this is inside your loop
}, 1);
};
stopBTN.onclick = function () {
clearInterval(interval);
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5634 次 |
| 最近记录: |