小编Ami*_*iño的帖子

当插入符号时,Chrome execCommand'insertHTML'会插入节点外部

我的任务是在当前插入位置的contentEditable div中插入一个空的span节点.

以下内容在Firefox 22.0上没有任何问题:

HTML

<div class="parent" contentEditable=true>
    <div>text</div>
</div>
Run Code Online (Sandbox Code Playgroud)

使用Javascript

$('.parent').on("keyup", function(e){
    if (e.which == 73) {
       node = '<span class="new"></span>';
       document.execCommand('insertHtml', null, node);
   }
});
Run Code Online (Sandbox Code Playgroud)

要重现:将插入符号放在单词"text"的某个位置,然后按"i"键在当前选择中插入空跨度.

请参阅:http://jsfiddle.net/amirisnino/pZecx/2/

例:

在单词中间按"i"键时

预期结果:

<div class="parent" contentEditable=true>
    <div>tei<span class="new"></span>xt</div>
</div>
Run Code Online (Sandbox Code Playgroud)

会发生什么?

<div class="parent" contentEditable=true>
    <div>teixt</div>
    <span class="new"></span>
    <div><br></div>
</div>
Run Code Online (Sandbox Code Playgroud)

任何有关这方面的帮助将不胜感激.先感谢您.

html javascript google-chrome execcommand inserthtml

6
推荐指数
1
解决办法
5421
查看次数