IEで、preタグにinnerHTMLで改行を入れると無視される
HTMLのタグに、記述したままを表示する pre タグがあります。
<pre> ほげほげ どもども こんにちわ </pre>
br を使わなくても、改行して表示してくれます。
しかし、IEで動的にJavascriptで pre タグにテキストを書き込むと
自動的に改行コードを半角スペースに変換するらしく
思ったとおりに表示できません。
FireFoxやOperaだとそんなことはないようです。
詳しくはこちら
http://d.hatena.ne.jp/brazil/20060917/1158465641
IE用に別に処理を書くしかなさそうです。
// jQuery.js を使用 var doc = "ほげほげ(改行)どもども(改行)こんにちわ(改行)"; if($.browser.msie){ doc = doc.replace(/\x0D\x0A|\x0D|\x0A/g,'\n\r'); $("pre").text(doc); }else{ $("pre").text(doc); } --------------------------------------------------------------- <pre></pre>
IEの場合だけ、改行コードを置換したらうまくいきました。
この手のIE対応は、本当に自分じゃ解決しきれない
難しい現象が多いので、ネットで解法を公開なさってくれている方に
感謝いたします。