テキストをどう挿入するかって話
すっごく単純なことにたくさんハマっていろんなことに気づかないにわかjavascripterです。
任意の文書にテキストを挿入するときにどうすればいいのかってことをよく知りませんでした。現在分かっていることのメモ。
document.write
これはあんまり使わない方がいいらしい。少なくてもモダンではないようだ。単純な例としてたくさん参考サイトに上がってるけど、2003年とかけっこう古い。
div.hogehoge という形
- innerHTML
- innerText
- textContent
divの中にテキストを埋め込む。innerHTMLは強引にタグを解釈させたりできる。textContentはタグを解釈させない。ブラウザごとに挙動が違うらしい。
TextNode をつなげる
document.createTextNode("hoge")して、どこか挿入したい箇所にappendChildする。この場合のテキストhogeは単純なテキストになってしまうため、タグの解釈などはされない。
詰まっていたとこ
divのプロパティ(?)として挿入する方法とテキストノードをつくってつなげるという形は違うということ。いや、Dragonflyとかでみたときに結果的に同じようになっているのにどうやればいいんだろうと試行錯誤したもので……たぶん遠回りな学習をしたと思う……。