var str1=aaaaaaa\nbbbbbbb;
alert(str1); //不换行 ???不知所以然
解决办法:
while (str1.indexOf("\\n") >= 0) { var str2 = str1.replace("\\n", " \n "); }
将\n两边各加一个空格就ok了。
alert(str2); //换行
使用css属性white-space: pre-wrap;解决
-
在css中
white-space
属性用来控制容器的文本中带有空白符、制表符、换行符等的显示。 -
normal
:默认,忽略文本中所有的空白、换行符;只有文本存在 或文本达到框的约束时,文本才会换行。 -
pre
:保留文本中的空白、换行符;遇到框的宽度约束时不会自动换行,文本存在 或文本中有换行符时,文本才会换行。 -
nowrap
:和normal类似,忽略文本中所有的空白、换行符;遇到框的宽度约束时不会自动换行,文本只有在有 br 时才会换行。 -
pre-wrap
:和pre类似,保留文本中的空白、换行符;文本存在 或文本中有换行符时,或者遇到框的宽度约束时,文本都才会换行。 -
pre-line
:会略文本中的空白符;文本存在 或文本中有换行符时,或者遇到框的宽度约束时,文本都才会换行。