document.writeハックに関するメモ

読了まで:約2分


document.write完全な DOM 対応にするためのメモ。

で、あとはテキストから DOM を構築する方法が分かれば、document.write元々の動作を失わせること無く、DOM に完全対応させることができる。

スクリプトの処理の流れをまとめると、

  1. スクリプト自体が属する script 要素を取得
  2. document.write書き換え、そのスクリプトのdocument.write書き出される HTML テキストを取得
  3. HTML テキストから DOM を構築する
  4. スクリプト要素が切り替わる、もしくはすべてのdocument.write実行され終わった後に生成した DOM ノードを追加する

いう感じ。

以上のような感じで、document.write(もしくはdocument.writeln)を書き換えると、MIME-Typeapplication/xhtml+xmlなページでdocument.write使えるようになる。(XHTML2 でも多分使える?)

思うんだけど、僕だと書けそうにない。

Text2DOM はすでにあったりするような気がするんだけど、どうも他のライブラリ群のなかのひとつみたいだったので、そのまま使うのはちょっと問題があったようななかったような。

まあでも、application/xhtml+xmlなページでdocument.write使えるようになるという夢のようなスクリプトまで、あとちょっとなので、誰かやってくれないかなぁ。

追記:2006-12-07T16:20:00+09:00

とりあえず他人任せはアレなので途中まで書いた。

  • [[-* writer.js]]

が、肝心のテキストから DOM を生成する部分ができてないので、動きません(ちなみにテストもしてない)。どこかにないかなぁ。

コードはパブリック・ドメインなので、改造は自由です。いいつつも、コードが微妙なので、あんまり参考にはならないかも。

アバターアイコン兼ロゴ

にゃるら(カラクリスタ)

『輝かしい青春』なんて失かった人。次に備えて待機中。

今は趣味でプログラミングをして生活しています。