开发者社区> 问答> 正文

如何控制鼠标事件?当处于down时会触发其他效果,而up的时候则会取消所有效果?

点击的时候,按钮会变橙色,松开变回白色。处于点击状态时,离开会变回白色,进去又为橙色。
但松开后,离开和进入的效果被保存到css了。
怎么让完成一次点击事件后,无效掉进入与退出的效果。

    $(".bottom .button").on({
        mousedown:function(){
            $(this).css("background-color","#FD9917").css("color","white")
                .on({
                    mouseenter:function(){
                        $(this).css("background-color","#FD9917").css("color","white")},
                    mouseleave:function(){
                        $(this).css("background-color","white").css("color","black")}
                })
        },
        mouseup:function(){
            $(this).css("background-color","white").css("color","black")
        }
    })

展开
收起
小旋风柴进 2016-05-27 09:50:51 1949 0
1 条回答
写回答
取消 提交回答
  • 首先,楼主要明白,事件的绑定没有嵌套,不嵌套的。
    一旦绑定了事件,就一直有效,并且固定。
    除非解除绑定。
    如下方式也行。

    var flag = 0;
     $(".bottom .button").on({
            mousedown:function(){
                $(this).css("background-color","#FD9917").css("color","white");
                flag = 1;
            },
            mouseup:function(){
                $(this).css("background-color","white").css("color","black");
                flag = 0;
            },
             mouseenter:function(){
                     if (flag==1)$(this).css("background-color","#FD9917").css("color","white");
             },
             mouseleave:function(){
                           if (flag==1)$(this).css("background-color","white").css("color","black");
             }
        })
    2019-07-17 19:17:07
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载