2015-07-03 24 views
0

例如,在下面的時間軸中,我在3秒和7秒之間上下滾動。滾動看起來不光滑。特寫是第一個也是最大的腳本塊(200ms)。我的理解是,瀏覽器不能同時執行主線程JS和繪畫。那是對的嗎?如果是,那麼如果該腳本塊被移除,那麼後面的綠色繪畫部分可以更快地執行,從而導致更平滑的滾動?長時間運行的主線程腳本是否阻止滾動畫?

enter image description here

特寫:

enter image description here

+1

是的,JS阻止用戶界面。您是否嘗試刪除該代碼塊以查看它是否改進? – 2015-07-03 21:36:22

+0

您提出的問題完全取決於實現,可能甚至取決於主機CPU配置(多少個內核)。任何HTML或ECMAScript規範都沒有在繪畫發生時精確地指定它。您需要在相關平臺上進行測試,以瞭解最佳效果。 JS可以阻止重畫,但在某些情況下它也可以觸發同步重畫。 – jfriend00

回答

0

是,是的。將長時間運行的JS移至工作人員。