我有一些按钮和输入字段。其中一个按钮启用了一个旨在永久运行的 JavaScript 进程,除非单击另一个按钮,否则无法终止。
但是,一旦该进程启动,所有 HTML 元素都会被卡住,因此该进程无法终止。
如果相关的话,我正在 Opera 中运行。
最佳答案
这并不令我惊讶。 JavaScript 在 UI 线程上运行。在每个事件处理程序或函数上,其目的是快速更改任何相关的 DOM 状态信息、启动任何异步进程,然后尽快完成。因此,没有其他任何东西可以响应任何其他事件。
听起来你的无限进程可能作为“Web Worker”(一种允许实际多线程的稍微新的技术)更好地工作,或者如果它不断检查文档的状态,也许可以将其安排在一系列重复的超时上。
关于Javascript 进程卡住 HTML 输入元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30916543/