Chrome execCommand(' insertHTML')行为

时间:2014-04-29 03:25:54

标签: javascript html google-chrome execcommand

在开发某种具有不可编辑块的WYSIWYG编辑器的同时,我发现了Chrome(以及Safari)中的有趣行为:当您在div中创建execCommand(' insertHTML')时contenteditable="true"(或其他元素) - 工作正常,就像你期望的那样。但是,如果您尝试在嵌套div中执行它而不使用" contenteditable" - 浏览器删除所有属性,但根据css添加style

的jsfiddle: http://jsfiddle.net/DXz9e/2/

尝试插入内部和外部文本。看看HTML代码。我在外面看到(有满足感):

<span id="newInsertedNode" class="constructor-input-field" data-id="23">Some text</span>

在内心:

<span style="background-color: red; color: blue;">Some text</span>

我只想说:&#34;到底发生了什么事?&#34; 它也适用于FF

1 个答案:

答案 0 :(得分:0)

一种解决方案是不使用Span元素(参见此处:https://dev.ckeditor.com/ticket/9004)。