到ueditor.all.min.js文件中,定位到b.execCommand("inserthtml",g.join(""),!0);这个语句,
并在这个语句后面添加 b.fireEvent('afterUpVideo',k); 同时在我们的业务代码中写上监听事件,如下:
_editor.addListener('afterUpVideo', function (t, arg) { //侦听视频上传
console.debug(arg);
//在 b.execCommand("inserthtml",g.join(""),!0);
//添加 b.fireEvent('afterUpVideo',k);
})
me.commands["insertvideo"] = {
execCommand: function (cmd, videoObjs, type){
videoObjs = utils.isArray(videoObjs)?videoObjs:[videoObjs];
var html = [],id = 'tmpVedio', cl;
for(var i=0,vi,len = videoObjs.length;i<len;i++){
vi = videoObjs[i];
cl = (type == 'upload' ? 'edui-upload-video video-js vjs-default-skin':'edui-faked-video');
html.push(creatInsertStr( vi.url, vi.width || 420, vi.height || 280, id + i, null, cl, 'image'));
}
me.execCommand("inserthtml", html.join(""), true);
me.fireEvent('afterUpVideo', videoObjs); //zgyuan add on 2015-10-21
var rng = this.selection.getRange();
for(var i= 0,len=videoObjs.length;i<len;i++){
var img = this.document.getElementById('tmpVedio'+i);
domUtils.removeAttributes(img,'id');
rng.selectNode(img).select();
me.execCommand('imagefloat',videoObjs[i].align)
}
},
queryCommandState : function(){
var img = me.selection.getRange().getClosedNode(),
flag = img && (img.className == "edui-faked-video" || img.className.indexOf("edui-upload-video")!=-1);
return flag ? 1 : 0;
}
};
};