寻找事件或其他方式来查明 UI 是否确实完成了对队列中项目的处理。
我的具体情况是,在使用 Angular 并进行一些(大)UI 更新时,UI 卡住了一段时间。 $scope.$apply() 是在这段时间发生的函数(从 devtools 配置文件中获取)。
我尝试过 setTimeout($timeout) 时间为 0。一旦队列中的所有函数都执行完毕,就会调用此函数。但是调用 setTimeout 后 UI 会挂起更长时间。
有什么想法吗?
最佳答案
嗯..
我不知道这是否真的对你有帮助。
但是有类似 requestIdleCallback
的东西,虽然它也会在队列中排队一个任务..但是这个任务只有在浏览器线程空闲时才会执行,你也可以强制它在一定时间后执行。
关于javascript - 有没有办法知道浏览器UI线程是否繁忙?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38199173/