[英]RequestAnimationFrame for multiple canvases
在單個requestAnimationFrame
中更新所有畫布是完全可以的。
如果畫布彼此獨立並出現在頁面的不同部分,那么您可能需要使用單獨的requestAnimationFrame
處理程序,將canvas
元素作為第二個參數傳遞。 這樣,只有當前可見的畫布會得到更新。 (不過,將元素作為第二個參數傳遞是特定於 WebKit 的。)
requestAnimationFrame
的作用是告訴瀏覽器您想要更新頁面的外觀。 當頁面或元素接下來要重繪時,瀏覽器會調用回調。 當頁面/元素可見時就會發生這種情況,並且永遠不會比屏幕刷新率更頻繁。
使用requestAnimationFrame
只是讓瀏覽器控制頁面上何時發生重排/重繪。
最好在一個回調中更改所有畫布,以便瀏覽器可以在一個 go 中重新繪制它們。
如果墊片不可用,墊片只會退回到計時器。
你應該沒事。 在同一個循環中更新所有這些。
requestAnimFrame
沒有“綁定”到 canvas 或任何東西,只是 function 你通過它。 因此,您可以將它與三個畫布或零個畫布一起使用就可以了。
在這種格式的 js 文件中使用 canvas 以便多個 canvas 的 RequestAnimationFrame 將起作用
(function(){ ... })();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.