だぶだぶOpera

Opera Widjet 開発手記

canvasと通常エレメントの併用

Opera Widjetとして実行する場合、
canvasの上にdivを重ねると、divを消した後、canvasが描画されなくなるというバグがあります。

DabWatchでは時計部分にcanvas、カレンダー部分や設定ダイアログにdivを使用していますが、設定ダイアログが必ず時計に重なります。
DabWatchでは、このバグに対応するため、
設定ダイアログを出す直前にcanvasのタイマーを止め、canvasのポジションを

style.left=-width+'px'

に移動させています。
設定ダイアログの左端が 0 なので、ちょうど画面の外の重ならない位置にあるというわけです。

で、設定ダイアログを閉じた直後にcanvasを元の位置に戻し、タイマーを動作させています。

通常のウェブページでは問題なく描画されます。

config.xml <auther>エレメントブログマスコット

Write a comment

New comments have been disabled for this post.

June 2012
M T W T F S S
May 2012July 2012
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30