我有一個相當CPU密集的腳本,運行時會凍結整個頁面一段時間,以至於無法滾動或點擊等。我很樂意犧牲性能以獲得更加流暢的體驗。Javascript代碼凍結頁面一段時間 - 我如何防止這種情況?
另外,就我而言,此腳本是Google Chrome擴展程序的一部分。
是否可以製作一個腳本來凍結頁面在後臺運行,而不會中斷用戶與頁面的交互?
我有一個相當CPU密集的腳本,運行時會凍結整個頁面一段時間,以至於無法滾動或點擊等。我很樂意犧牲性能以獲得更加流暢的體驗。Javascript代碼凍結頁面一段時間 - 我如何防止這種情況?
另外,就我而言,此腳本是Google Chrome擴展程序的一部分。
是否可以製作一個腳本來凍結頁面在後臺運行,而不會中斷用戶與頁面的交互?
也許web workers感興趣。
最好將CPU密集型任務放入一個工作者,後者在後臺完成工作。另一種解決方案是將你的代碼分割成幾部分,異步加載它們並且一個接一個地執行它們。
http://blog.typekit.com/2011/05/25/loading-typekit-fonts-asynchronously/
答案的不確定性使得這更多的評論。 – Blender
操作來分開長期運行的代碼成幾個,連續的函數調用或使用[工人](https://developer.mozilla.org/en-US/docs/Web/API/Worker) 。 – Sirko
http://www.html5rocks.com/en/tutorials/workers/basics/ –