暂停js脚本直到事件发生

时间:2012-07-19 14:35:56

标签: javascript javascript-events

有没有办法暂停js脚本,直到鼠标点击按钮之类的事件发生?我的意思是脚本应暂停执行并在事件发生时再次恢复。我是javascript的新手,甚至在网上彻底搜索后找不到解决方案!

3 个答案:

答案 0 :(得分:1)

JS是单线程的,多线程只能由Web Workers完成。据我所知。

但是如果你只有一个你想要暂停的小脚本,你可以拥有一个全局变量/标志,只需在你的脚本中(我不知何故相信它是一个循环或事件驱动的函数)检查一下旗。在这种情况下:

var flag = false;

...
if (flag) {
   do your code
} else {
   do nothing or return if in function
}

想要继续,只需设置flag = true;

即可

答案 1 :(得分:0)

JavaScript是单线程的,在事件发生时没有抢占。这是不可能的。

答案 2 :(得分:0)

如果您要暂停的是一个本来会循环的功能,我会想出一个很好的解决方案: https://stackoverflow.com/a/47841425/2884291