Я считаю это.
Я обнаружил, что IE использует \ r \ n, а Fx (другие) использует \ 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 (редактор wysiwyg), который я однажды сделал, я использовал режим редактирования BR i
и убрал его при отправке и т. д.
Этот код перебирает все элементы BR внутри элементов PRE и заменяет BR на новые строки.
Обратите внимание, что код основан на API TinyMCE, но может быть легко написан с использованием стандартного 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]);
}
Удачи!