在contenteditable = true时键入空div?

时间:2014-02-25 23:21:44

标签: javascript dom whitespace contenteditable

为什么在启用contenteditable时光标不会进入我的某些div?

另外,为什么我的浏览器告诉我,当div中有空格字符时,div中没有​​任何内容?!

var div = '<div> </div>'; 
div.innerHTML = undefined 

是什么给出了?

1 个答案:

答案 0 :(得分:-1)

contenteditable不适用于空元素,因此您可能希望在您希望能够编辑的空元素中插入非空格字符

非破坏空间"&nbsp;"将在自己独立时充当角色,
而空白" "只会在另一个角色后面被视为一个角色

<div>" "</div> ----------------&gt; innerHTML = undefined
<div>"&nbsp;"</div> --------&gt; innerHTML =  

&nbsp;周围的灰色框表示其为html字符
因此,请务必插入"&nbsp"而不是" "

var nbsp = "&nbsp;",
    div = document.getElementById('id');
div.innerHTML = nbsp

jquery也适用

var div = $('div#id')
div.html(nbsp1)