死活沒生成layerForScrollingContent的解決辦法

  • 2019 年 12 月 4 日
  • 筆記

本文作者:IMWeb DeepKolos 原文出處:IMWeb社區 未經同意,禁止轉載

先挖個坑, 之後再尋找原因

問題是這樣的一個可以滾動的頁面, 但是死活都沒有生成出layerForScrollingContent , 不知道為什麼, 即便給scroll的contianer添加will-change:scroll;也沒有用, 如果添加了will-change:transform;,則會生成containerscrollBar的layer , 就是不生成content的layer

那麼既然沒有生成解決辦法就是手動生成, 做法很簡單 , 在需要滾動的內容包一個div, 並且設置will-change:transform;

還是上動圖清楚看到區別吧~

很明顯的區別就是沒有paint的觸發

沒有手動添加一個layer的時候

手動添加layer的時候

從單位上就可以知道有多少倍的區別了

不過如果對比那些默認生成layerForScrollingContent還有有些區別的, 主要是在一幀開始就開始渲染了 , 其他的不好對比因為還沒找到沒有生成layerForScrollingContent的原因, 這是另外的頁面來的 ( 注: 虛線是這一幀的開始