Fabric.jsを使っています。
パソコンのChromeや、iPhoneでは、正常に動くのに、アンドロイドのブラウザ(Chrome)でのみ、期待通りに動かずに悩みました。
var text = new fabric.IText("foo");
canvas.add(text);
と記述しましたが、テキスト(text)が表示されませんでした。
canvas部分に触れると表示されました。
つまり、データは、存在するにもかかわらず、なんらかの理由で、隠れている状態でした。
canvasの再作画のコマンドがあるのかと調べましたが、canvasにそのようなものはなく、Fabric.jsのrenderAllでも表示されませんでした。
setTimeoutを使うと表示されました。
スレッドの問題か、タイミングの問題か、根本原因は分かりませんが、とりあえず、これで解決しました。
setTimeout((function(){
var text = new fabric.IText("foo");
canvas.add(text);
}).bind(this),10);
0 件のコメント:
コメントを投稿