首頁 >web前端 >js教程 >如何在 Chrome/Mac 上強制 DOM 重繪?

如何在 Chrome/Mac 上強制 DOM 重繪?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-29 05:02:13359瀏覽

How to Force a DOM Redraw on Chrome/Mac?

Chrome/Mac 上的強制DOM 重繪

當Mac 上的Chrome 遇到渲染問題時,觸發重繪的傳統方法會因優化而失敗在瀏覽器中實現。本文探討了一種替代方法,利用父元素的可見性操作來強制重繪,而不依賴 offsetHeight 屬性。

重繪的常見技巧

在其他瀏覽器組合中,以下hack 有效地觸發了重繪:

透過修改未使用的CSS 屬性,然後請求強制重新計算的資訊(如元素的高度),最後恢復原始屬性,實現重繪。

Chrome/Mac 最佳化

不幸的是,Chrome在 Mac 上,透過檢索 offsetHeight 而不觸發重繪。

替代重繪駭客

要在Chrome/Mac 上強制重繪,建議使用以下解決方案:

此方法介紹元素邊框的可見更改,迫使瀏覽器重繪。需要超時以確保重繪在邊框返回到原始狀態之前發生。

其他選項

強制重繪的其他方法包括:

  • 使用隱藏然後取消隱藏父元素jQuery:
  • 將空白文字節點插入元素中:

這些方法確保更直接的重繪,而不涉及CSS 操作。

以上是如何在 Chrome/Mac 上強制 DOM 重繪?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn