主题: firefox下编辑框无法用focus获得焦点,而ie、chrome下是正常的
作者: weaver, 发布日期: 2013-01-08 21:22:16, 浏览数: 3344
操作系统: 
win7
浏览器版本: 
firefox  7.0.1
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.something.click事件触发后,也就是点击了某个按钮后,编辑框没有获得焦点,需要再点击一次刚出现的编辑框才行(原先编辑框是在一个div里的,然后div被隐藏了,这里的click会把div显示,然后focus编辑框


期望结果: 


触发click事件后,ff可以直接获得焦点(与ie、chrome相同即可)


作者: weaver, 发布日期: 2013-01-09 11:56:51

ff已更新到18.0,问题依旧。。

回复
作者: 贝加达, 发布日期: 2013-01-09 16:15:59
在点击事件里create编辑器,把focus事件放到afterCreate中试试
回复
作者: weaver, 发布日期: 2013-01-09 17:18:44

回复贝加达:

感谢贝加达!用这个办法试了下,可以用。

弊端是代码量会多很多,处理的方式也不是最好的,呵呵。。

还是希望官方能解决为好

回复
发表新帖 发表回复