洗洗脚泡泡澡
2016-07-06 08:36
采纳率: 40.9%
浏览 4.5k
已采纳

jquery focus()方法失效

                        $(".chatbox .sendemoji").on("emoji",
                                function(event, emoji) {
                                    var input = $(".chatbox .inputbox");
                                    input.val(input.val() + emoji);
                                    input.focus();
                                });
        $(".face_panel").click(function(event){
            var _$this=$(event.target);
            if(_$this.is("span") && _$this.attr("code")){
                var name = "face_panel";
                var panel = $("." + name);
                var mask = $("." + name + "-mask");
                if (name === "face_panel") {
                    if(IsPC()){
                        //panel.css({left: 1, top: top,width:300}).show();
                    }else {
                        var face_top=$(".opbar.noselection").offset().top+$(".face_panel").outerHeight();
                        $(".opbar.noselection").css({top:face_top});
                        mask.hide();
                    }
                }
                $(".chatbox .sendemoji").trigger("emoji",(_$this.attr("data-emoji").split("-")[4]));
                $(".face_panel").hide();
                $(".face_panel").click().clean();
            }
        });

打印文本什么都正常,说明语法并没有错,可是focus就是没用,并且我emoji表情也放不进去,还有浏览器都显示undefined方法--clean();

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • 我等了许久 2016-07-06 14:30
    已采纳

    给需要focus的元素加上tabindex属性,并且可以先调用blur,再调用focus

    已采纳该答案
    打赏 评论
  • csdn_lichen 2016-07-06 09:04

    为什么不试着调试一下

    打赏 评论
  • 听楼一夜雨 2016-07-06 09:12

    你要调用focus()方法,就要把方法写出来啊...比如:
    $("input").focus(function(){
    $("input").css("background-color","#FFFFCC");
    });

    打赏 评论
  • 没有放入表情,那么就是$(".chatbox .sendemoji")这个选择器没有选中元素,或者执行事件绑定的时候没有此类元素存在。你要确认绑定事件前已经存在$(".chatbox .sendemoji")此类元素才行

    打赏 评论

相关推荐 更多相似问题