我估计这个。
我发现 IE 正在使用 \r\n 而 Fx(others) 正在使用 \n
var newline;
if ( document.all ) newline = '\r\n';
else newline = '\n';
var data = 'firstline' + newline + 'second line';
document.getElementById("putItHere").appendChild(document.createTextNode(data));
对于我曾经制作的 TinyMCE(所见即所得编辑器)插件,我最终使用了 BR i 编辑模式并在提交等时对其进行了清理。
此代码循环遍历 PRE 元素内的所有 BR 元素,并将 BR 替换为换行符。
请注意,代码依赖于 TinyMCE API,但可以使用标准 Javascript 轻松编写。
清理:
var br = ed.dom.select('pre br');
for (var i = 0; i < br.length; i++) {
var nlChar;
if (tinymce.isIE)
nlChar = '\r\n';
else
nlChar = '\n';
var nl = ed.getDoc().createTextNode(nlChar);
ed.dom.insertAfter(nl, br[i]);
ed.dom.remove(br[i]);
}
祝你好运!