Kindeditor使用replaceWith不能起效

前端使用Kindeditor,现在要实现一个功能:粘贴截图自动上传,后台将图片存在服务器,并返回url,kindeditor使用这个url显示图片。

现在遇到个问题,在火狐浏览器下,直接使用insertHtml会插入粘贴进去的截图和使用后台返回的url显示的图片,所以想用replacewith,但是又不起作用,请各位大神指点下。

var frame = this.edit;
var cmd = this.edit.cmd;
var doc = this.edit.doc;

$(doc.body).bind('paste', function(e)
{
    setTimeout(function()
    {
        var html = K(doc.body).html();
        var ele = $(html).find('img');

         ele.each(function (index,element) {
             if(element.outerHTML.search(/<img src="data:.+;base64,/) > -1){
                 var src = element.src;
                 var formData = new FormData();
                 var file = dataURItoBlob(src);
                 formData.append("imgFile",file);

                 $.ajax({
                     url : '../kindUpload',
                     type : 'POST',
                     data : formData,
                     processData : false,
                     contentType : false,
                     dataType:"json",
                     success : function(res) {
                         //上传完之后,生成图片标签回显图片,假定服务器返回url。
                         var src = res.url;
                         var imgTag = "<img src='"+src+"' border='0'/>";
                         K(element).replaceWith(imgTag);
                         editor.sync();
                     },
                     error : function(res) {
                         console.log(res);
                     }
                 });
             }
        })
    }, 40);
});
阅读 1.7k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题