SVGのマインスイーパー

Javaでの SVGブラウザーhttp://xml.apache.org/batik/svgviewer.htmlてのがあって, そのサンプルにマインスイーパーがあったりする。 PmW-FxSVGの安定さに気をよくして, 試しにソレを動かしてみようとか思い立った。
けど, 上部しか表示されない。しかも処理中に固まったまま, な感じ。
調べてみると, Squiggleは HTML/SVGブラウザーである Firefoxなどとは処理が微妙に異なってて, JavaScriptが動き出すときには すでに SVG(XML) がすべて読み込まれて idを認識している状態っぽい。 てことで getElementByIdを使ってその後の方にある要素に対してアクセスしてみたり, そんな処理になってたって訳。

  • text要素 id="working"を, g要素 id="field"の前に移動させる
  • function initBoard(evt) の先頭で, board, coverの各変数に再度 getElementById()を使って値をセットする

この 2点の修正で動くようになったりして。

んで, σ(^^) の動かしている環境ではフォントが微妙に大きくて, マスから少しはみ出てて, そんな訳で安全部分が丸分かりだったりする。でも, ま, この程度の変更なら簡単カモ。