Как добавить неразрывные пробелы в JavaScript без использования innerHTML?

я генерирую контент динамически, и в некоторых случаях мне нужно установить &nbsp; Как только содержимое <span> элемент.

однако, следующее добавляет &nbsp; как текст против добавления пустого пространства:

var foo = document.createElement("span")
foo = document.createTextNode("&nbsp;");

что имеет смысл, поэтому мне интересно, как бы я добавил &nbsp; правильно без (!) с помощью innerHTML

Спасибо за помощь!

2 ответов


вы можете использовать литерал unicode для non ломая космос:

var foo = document.createTextNode("\u00A0");

если вы не хотите использовать innerHTML, вы можете использовать шестнадцатеричную Escape.

наиболее распространенные:

  • \x20 – стандартный пробел или \s
  • \xC2\xA0 – неразрывный пробел или &nbsp;
  • \x0D – возврат каретки или \r
  • \x0A – newline или \n
  • \x09 – tab или \t

в вашем случае: \xC2\xA0