【发布时间】:2012-03-08 23:53:50
【问题描述】:
这是一个复杂的!我在 Chrome 中使用 contentEditable,我遇到了头部融化的问题。当我按下返回键时,Chrome 会在 innerHTML 中插入一个新的 div。这很好,花花公子。问题是在 div 的 textContent 中找不到换行符。我真的需要想办法将换行符添加到 textContent 与 innerHTML 中的 div 换行符相同的位置。
有什么想法吗?
更新:
我可以使用innerText,但是当页面加载时出现的换行符会被忽略。我需要这些方法之一的一致性。换句话说,我需要 textContent 来显示新输入的换行符或 innerText 来显示页面加载时存在的换行符。
这是一个更新的演示:
function checkit() {
var c1 = document.getElementById('c1')
alert("TEXTCONTENT:\n" + c1.textContent + "\n\nINNERTEXT:\n" + c1.innerText + "\n\nINNERHTML:\n" + c1.innerHTML)
}
div {padding: 20px; border-bottom: 1px solid #CCC;}
<div><a href="#" onclick="checkit()">check it</a></div>
<div contentEditable="true" id="c1">click inside this <b>div</b>,
press return and then press <b>check it</b> above</div>
【问题讨论】:
标签: javascript html wysiwyg contenteditable