点击同一个按钮,隐藏和显示同时执行了,怎么分开执行?

爱许乐
  • 179
    $("span.opt").on("click",function(){
        if($(this).hasClass("close")) {
            $(".nav,.content").animate({left:"225px"}, "slow");
            $(".left-float").animate({left:"0"}, "slow");
            $(this).removeClass("close");
        }else{
            $(".nav,.content").animate({left: '0'}, "slow");
            $(".left-float").animate({left:"-225px"}, "slow");
            $(this).addClass("close");
        }
    });
    $("span.opt").trigger("click");
回复
阅读 1.8k
3 个回答
✓ 已被采纳

有上下文的代码吗?单看这个应该不会出此问题的。
查查是不是重复绑定事件了,或是绑定选择符的问题

讨论:是不是你用on绑定了一次时间了,然后又用tigger又绑定了一次,tigger我记得是切换的意思,如果你传进去的参数是function,那就不需要上面的on了吧~(简单说就是把tigger注释掉试试)

在if块结尾处加入return可以吗,使之强制退出函数,同样在else里结尾处也加入return,强制退出函数。试试可以不。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏