主题: chrome下拖动下边沿会导致blur,在ie、ff下均正常拖拉使用 |
作者: weaver, 发布日期: 2013-01-08 21:17:12, 浏览数: 3198 |
操作系统:
win7 浏览器版本: chrome 版本 23.0.1271.97 m KindEditor版本: 4.1.1(2012-6-10) BUG再现步骤: 1.//初始化内容编辑框 var taskContentKe = KindEditor.create('#'+taskTextarea.attr("id"), { width : "100%", //横向充满 cssPath:"/static/css/jquery/jquery.kindeditor.css", minHeight : 50, filterMode : false, //不会过滤HTML代码 resizeMode : 1, //编辑器只能调整高度 items : [ //显示的按钮 //'fontname', 'fontsize', 'forecolor', 'hilitecolor', '|', //'bold', 'italic', 'underline', 'removeformat', '|', //'justifyleft', 'justifycenter', 'justifyright', //'insertorderedlist', 'insertunorderedlist' ], afterBlur : function updateTaskContent(){//编辑器失去焦点时,保存内容 if(taskPanel.attr("id").indexOf("init_")==0){ taskContentKe.focus(); return; } //同步编辑框信息(使用非原生submit按钮时,需要调用同步方法) taskContentKe.sync(); //ajax提交表单 $.post("/task/task!updateContent.jspx", {"task.id":taskPanel.find("#taskId").val(),"task.content":taskTextarea.val()}, function(data){ //dosomething }, "json" ); } }); 2.//点击展开编辑框 something.click( function(){ taskContentKe.edit.setHeight(something.height()); taskContentKe.html(something.html()); taskContentKe.focus(); } ); 3.拖动编辑框下边沿,触发blur事件,执行了 function updateTaskContent(){//编辑器失去焦点时,保存内容 期望结果:
拖动下边沿时,只扩大编辑框高度,不触发blur事件(与ie、ff相同即可) |
作者: 光怪陆离, 发布日期: 2013-01-09 15:31:57 |
我的编辑器在任何浏览器下都不存在这样的问题,我用的是XP,KindEditor 4.1.4
|
回复 |
作者: weaver, 发布日期: 2013-01-09 15:44:25 |
回复光怪陆离:谢谢!我也升级看看
|
回复 |
作者: weaver, 发布日期: 2013-01-09 16:06:51 |
回复光怪陆离: 下载了4.1.4,问题依旧,还是chrome不行,其他可以 想请教您一下: 1.您实验过了不会触发afterblur事件吗? 2.您引入的js文件是哪个? 我引入的是:
<script type="text/javascript" src="/static/js/kindeditor/kindeditor-all.js"></script> |
回复 |
作者: weaver, 发布日期: 2013-01-24 16:32:09 |
4.1.5连firefox也不能拖了,和chrome一个情况,只有ie正常!换回4.1.2就firefox和ie可以拖!
会触发blur事件解决起来很难吗?文档也写得十分不完善
这里能否问两个问题: 1、mouseover事件如何绑定? 2、如何获取编辑器的所在位置?
谢谢! |
回复 |
作者: weaver, 发布日期: 2013-01-24 18:14:09 |
用了一个无耻的办法来绕过了,3个浏览器都测试通过。 (还有些小问题,比如mouseup的时候不在statusbar上,就不会重新focus回去,放body的mouseup也不行,因为可能摁着鼠标到其他窗口去了)
//ke-statusbar是kindeditor用来拖动的div,因为chrome在拖动的时候会触发blur事件,这里用flag,在触发blur时判断,取消blur |
回复 |