粘贴结束标记,而不会在contenteditable中生成开始p标记
我有一个令人满意的div:
当我按下ENTER时,我想要新的段落形成,为此我拦截了ENTER keydown并通过插入html代码替换默认操作:
$(".content").on("keydown",function(e){if(e.which == 13) { e.preventDefault(); pasteHtmlAtCaret("
");}});
我希望当我按下ENTER键时,
将关闭现有段落并打开一个新段落。 所以,如果我键入:’hello world’+ ENTER,我应该:
hello world
你可以在哪里识别
件。 我观察到了不同的行为。 我明白了:
hello world
所以似乎第一个
已经产生了一个开始的
标签,并且在
tag
之前的
产生了一个匹配的结束p标签。 这是否意味着我的浏览器忽略了包装
? 当我插入一小段html代码时,如何避免产生新的p
标签?
我正在使用Chromium和jQuery 1.7.2。
编辑发生在文档对象模型(DOM)中。 HTML标记实际上并不存在于编辑器中。 HTML被解析为DOM。 在序列化DOM时,会再次生成HTML标记。 因此,不能粘贴不正确的HTML片段而不会产生后果。