言われますまい

WEBエンジニアのかいはつにっし

canvasのtoDataURLがfirefox,safari,ieで遅延する?件

ネットで調べてもうまく情報を見つけられないので確かなことがさっぱりわからないんですが、どうやらfirefox,safari,ieでtoDataURLが遅延する。

遅延するといっても0.01秒かそこらのこと。

しかしそのままtoDataURLしてから、それを再度Canvasに書き出すと何も表示されない。

Chrome,operaだと問題なく表示された。

 

何故なのだろうか。

 

0.01秒(念のため1秒)setIntervalでわざと処理を遅らせてから再度処理を進めたところきれいに表示された。

強引ではあるけど、回避策でどうとでもなるが、非常に気持ち悪い。

何かわかればいいが。


わりかし基本的なことだった。

 imageの画像読み込みが非同期で行われることが原因だった。

なので、setIntervalは強引すぎるし、タイミングもずれる。

ただしくは、onloadイベントリスナを設定してから

画像読み込みを始めるのが良い。

終わったタイミングでonloadイベントにとぶ。

これが正解。

 

しょうもない話ですみません。。。