Как ни глупо, как может показаться, я до сих пор не нашел подходящего ответа.
Скажем, я хочу динамически создать новый элемент DOM и заполнить его textContent/innerText
с строковым литералом JS.
Строка так долго, я хотел бы разбить ее на три части:
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/ > выполнит эту работу, но это заменит не только текстовое содержимое, но и весь контент HTML моего h1, что не совсем то, что я хочу.
Есть ли простой способ решить мою проблему?
Я бы не прибегал к созданию нескольких элементов блока, чтобы иметь текст на разных строках.
Любая идея была бы весьма признательна.
Спасибо заранее.