2 回答
TA贡献1826条经验 获得超6个赞
<div id='div'></div>
<script>
var text = ' This is a dummy text! ';
document.getElementById('div').innerText = text.replace(/ /g, '\u00a0');
</script>
用 ' '
只有设置为 innerHTML
有效,用 '\u00a0'
设置 textContent
, innerHTML
, innerText
都有效。
TA贡献1784条经验 获得超9个赞
如果是这种场景,为了防xss,建议使用实体和非实体的转化:
function htmlEncode(html) {
var sub = document.createElement('div');
sub.textContent != null ? sub.textContent = html : sub.innerText = html;
var output = sub.innerHTML;
sub = null;
return output;
}
function htmlDecode(text) {
var sub = document.createElement('div');
sub.innerHTML = text;
var output = sub.textContent || sub.innerText;
sub = null;
return output;
}
- 2 回答
- 0 关注
- 856 浏览
添加回答
举报