ちょっと先を行く感 MAX にして Rain Dragon Project のページを XHTML に変えてみた。
ららるーら村のページを見てくれればわかると思うが(ららるーら村のページは HTML)、何が問題かって、案内役のカジキ君(ららるーら村ページはカイン君)なんだよ(ぁ
/*---------------------------------------------------------------------*/ /* Dragging Object */ /*---------------------------------------------------------------------*/ function dragging(eventNN) { if(g_drag == false) return; if(eventNN == null) { eventNN = event; } if(eventNN.pageX != undefined) { g_objall.style.left = eventNN.pageX - diff_x + "px"; g_objall.style.top = eventNN.pageY - diff_y + "px"; } else { g_objall.style.left = eventNN.x - diff_x + "px"; g_objall.style.top = eventNN.y - diff_y + "px"; } }
これは、そのカジキ君なりカイン君なりのソースコードの一部であり、XHTML でも動作するよう修正されている。
/*---------------------------------------------------------------------*/ /* Dragging Object */ /*---------------------------------------------------------------------*/ function dragging(eventNN) { if(g_drag == false) return; if(eventNN == null) { eventNN = event; } if(eventNN.pageX != undefined) { g_objall.style.left = eventNN.pageX - diff_x; g_objall.style.top = eventNN.pageY - diff_y; } else { g_objall.style.left = eventNN.x - diff_x; g_objall.style.top = eventNN.y - diff_y; } }
こっちは、修正する前のソース。何が違うかわかるよね。
そう、XHTML だと left や top にちゃんと単位 (この場合は px )をつけてあげないとパースエラーになってしまうのだ(Firefox 2.0.0.14 で確認)。
XHTML だと CSS にも厳格な動作をする(XML の読み方をするため?)から大変だ。
ちなみに XHTML は XML の派生物だから、firefox からしてみれば読みやすい(変な文があるとすぐエラーにできる)っていう特徴をもっているものだ。
参考までに描画処理速度をαPNGを重ねるという超重い処理を上の行った場合で検証してみた。
(速) Mozilla (SeaMonkey) > Firefox > Konqueror (遅)
これはダウンロード速度や Javascript の実行速度とは無関係だということを覚えておいてね。