主题: 4.1.10上传图片弹出框不消失及弹出多个框Bug有没有朋友有解决方法
作者: 贝加达, 发布日期: 2015-01-08 01:31:26, 浏览数: 1864

升级4.1.10扣多出来两个BUG,4.1.7中没这样的问题,找了半天没找出修复办法,有没有朋友有解决方法,十分感谢!

 

Bug1
添加第一张图片后,点击编辑框里的图片,右键修改图片属性。
修改完大小后,再添加图片时,选择完图片点击确定按钮,图片能正常上传,弹出框不消失了。

 

Bug2
1、插入图片,表格,flash等有右键属性的 
2、选择插入的元素->右键属性 -> 点击确定或取消按钮。
3、重复以上动作N次。
4、在工具栏上点击对应的按钮,弹出N个属性对话框。

 

官网演示程序同样有这两个BUG,论坛有好几个朋友提出。

作者: 贝加达, 发布日期: 2015-01-08 21:11:17

刚才查询了老大的源码历史记录,似乎是在4.1.8版前发现了在某种特别环境下会出现类似问题,4.1.8版做了修复,但修复后问题似乎更严重了,暂时可以将4.1.10版的 loadPlugin : function(name, fn) 函数规制成 4.1.7版的,代码从 kindeditor.js的 4801行开始替换,具体如下:

	self.isCreated = false;
	self.isLoading = false;
	self._handlers = {};
	self._contextmenus = [];
	self._undoStack = [];
	self._redoStack = [];
	self._calledPlugins = {};
	self._firstAddBookmark = true;
	self.menu = self.contextmenu = null;
	self.dialogs = [];
}
KEditor.prototype = {
	lang : function(mixed) {
		return _lang(mixed, this.langType);
	},
	loadPlugin : function(name, fn) {
		var self = this;
		if (_plugins[name]) {
			if (self._calledPlugins[name]) {
				setTimeout(function() {
					if (fn) {fn.call(self);}
				}, 100);
				return self;
			}
			_plugins[name].call(self, KindEditor);
			if (fn) {
				fn.call(self);
			}
			self._calledPlugins[name] = true;
			return self;
		}
		if (self.isLoading) {
			return self;
		}
		self.isLoading = true;
		_loadScript(self.pluginsPath + name + '/' + name + '.js?ver=' + encodeURIComponent(K.DEBUG ? _TIME : _VERSION), function() {
			self.isLoading = false;
			setTimeout(function() {
				if (_plugins[name]) {
					self.loadPlugin(name, fn);
				}
			}, 0);
		});
		return self;
	},


只是不知4.1.7此类问题是什么情况下会出现,暂时凑合吧,希望知道此问题终极解决办法的朋友分享一下。

 

下面链接为修改好的 4.1.10 版的kindeditor.js,搞不清如何修改的朋友可以直接下载:

 

点此下载kindeditor4.1.10修改版kindeditor.js
回复
发表新帖 发表回复