我有一个DIV CONTENTEDITABLE:
<div id="result" class="content" contenteditable="true"><p><br/></p></div>
我想新的段落,以形成当我按下Enter键,并为我拦截ENTER的keydown和替换通过的HTML代码中插入的默认操作:
$(".content").on("keydown",function(e){if(e.which == 13) { e.preventDefault(); pasteHtmlAtCaret("</p><p><br/>");}});
我希望的是,当我按下回车键, </p><p><br/>
将关闭现有的段落,并打开一个新的段落。 所以,如果我打字:“世界你好” + Enter,我应该有:
<p>hello world</p><p><br/></p>
在这里可以识别</p><p><br/>
片。 我虽然观察不同的行为。 我得到:
<p>hello world<p></p><p><br></p></p>
如此看来,与第一</p>
催生了一个开口<p>
标签并且该<p>
刚刚之前<br/>
标签催生了一个匹配的结束p标记。 这是否意味着我的浏览器忽视了包装的存在<p></p>
我怎样才能避免产生一个新的p
标签,当我插入我的小片的HTML代码?
我使用铬和jQuery 1.7.2。