问题
I'm generating content dynamically and in some instances, I need to set a as the only content of a <span> element.
However, the following adds as text vs adding a empty space:
var foo = document.createElement("span")
foo = document.createTextNode(" ");
which makes sense, so I'm wondering, how would I add correctly without (!) using innerHTML
Thanks for help!
回答1:
You can use a unicode literal for a non breaking space:
var foo = document.createTextNode("\u00A0");
回答2:
If you don't want to use innerHTML, you can use a hexadecimal escape.
The most common:
\x20– standard space or\s\xC2\xA0– non-breaking space or \x0D– carriage return or\r\x0A– newline or\n\x09– tab or\t
In your case: \xC2\xA0
来源:https://stackoverflow.com/questions/19810122/how-do-i-add-a-non-breaking-whitespace-in-javascript-without-using-innerhtml