如何在IE CONTENTEDITABLE的DIV重新调整时插入图片?(how refocus wh

2019-09-30 04:47发布

有一个div: <div contenteditable="true"></div>在IE(7,8,9),那么我点击一个按钮来使用所述插入图像document.execCommand('insertImage')方法。 然后,图像被插入。 到现在为止也没有问题。 但插入的图像选择具有可调整大小的处理程序。 我怎么能取消选择和调整背后的形象? 谢谢。

$button.click(function(){ document.execCommand("insertImage",false,'url'); });

Answer 1:

更新了简单的代码

下面是一些讨厌的代码来做到这一点。 在其他的浏览器,它似乎反正工作,所以可以用下面的,因为它是。

演示: http://jsfiddle.net/timdown/mr7Ac/6/

码:

function insertImage() {
    var sel = document.selection;
    if (sel) {
        var textRange = sel.createRange();
        document.execCommand('insertImage', false, "someimage.png");
        textRange.collapse(false);
        textRange.select();
    } else {
        document.execCommand('insertImage', false, "someimage.png");
    }
}


Answer 2:

尝试是这样的(仅IE):

function insertImage(){
    if(document.selection){
        var sel=document.selection;
        var range=sel.createRange();
        var amount=(document.addEventListener)?2:1;
        document.execCommand('insertImage', false, 'url');
        range.move('character',amount);
        range.select();
    }
    return;
}


文章来源: how refocus when insert image in contenteditable DIVs in IE?