jQuery 怎么实现点击页面其他地方隐藏菜单

 我来答
白卡PALA
2017-07-16 · 知道合伙人软件行家
白卡PALA
知道合伙人软件行家
采纳数:648 获赞数:3420
性能测试4年工作经验。

向TA提问 私信TA
展开全部

需要通过Jquery来实现这种点击页面其他地方隐藏菜单的效果,重要的一点就是需要通过event.stopPropagation()来阻止事件冒泡:

<p><a href="javascript:void(0)" class="a">菜单按钮</a></p>
<div class="menu">
<a href="http://www.baidu.com">百度</a>
</div>
//绑定按钮事件,点击按钮可以打开菜单,同时也能关闭按钮
$(".a").on("click", function(e){
    if($(".menu").is(":hidden")){
        $(".menu").show();
    }else{
     $(".menu").hide();
    }    
    //给document绑定一个一次性的click事件,点击关闭菜单
    $(document).one("click", function(){
        $(".menu").hide();
    });

    e.stopPropagation();
    });
    
    //通过e.stopPropagation()来保证点击菜单不会关闭菜单
    $(".menu").on("click", function(e){
        e.stopPropagation();
    });
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式