假设我想动态创建一个新的DOM元素,并用JS字符串文字填充它的textContent/innerText属性。
这个字符串太长了,我想把它分成三个部分:
var h1 = document.createElement("h1");
h1.textContent = "This is a very long string and I would like to insert a carriage return HERE...
moreover, I would like to insert another carriage return HERE...
so this text will display in a new line";
问题是,如果我写
h1.textContent = "...I would like to insert a carriage return here... \n";
它不起作用,可能因为浏览器将 '\n' 视为纯文本并按照此方式显示('\r' 也无效)。
另一方面,我可以更改 h1.innerHTML 而不是 textContent 并编写::
h1.innerHTML = "...I would like to insert a carriage return here...<br />";
这里可以使用<br />,但这样做会替换掉我的h1标签中的所有HTML内容,而不仅仅是文本内容,这不是我想要的结果.
有没有简单的方法来解决我的问题?
我不想创建多个块元素来使文本处于不同的行。