Я хочу иметь возможность сказать
$(someElem).text('this\n has\n newlines);
и отображается с новой строкой в браузере. Единственный обходной путь, который я нашел, - установить для свойства css 'white-space' значение 'pre' на someElem. Это почти работает, но тогда у меня есть досадно большой отступ между текстом и верхней частью someElem, даже когда я устанавливаю отступ на 0. Есть ли способ избавиться от этого?
append()
вместо test()
и <br/>
вместо \n
? вот так -$(someElem).append("this <br/> has <br/> newlines");
<pre>
тегами (и использование .html () вместо .text ()), на мой взгляд, является самым простым и лучшим решением для сохранения разрывов строк из текстового файла или из простого текста (это предлагается ответом Карима ниже). ОДНАКО: более новая альтернатива этому - использовать,white-space: pre-wrap;
как предложено в ответе