jquery - 如何在单击 div 时通过 jQuery 显示和隐藏以及在单击 body 时隐藏

标签 jquery html css drop-down-menu

我正在开发一个类似于移动菜单的菜单。我希望当我单击图像时它会向下滑动并显示菜单,当单击该图像时它会向上滑动。并且还希望当我点击 body 的任何地方时它也会向上滑动。当我点击图像和点击正文时,我的菜单可以正常工作。

但是再次点击图片无法上滑菜单,就是这个问题。

我正在使用这个代码

$(".service_detail_menu img").click(function(e){
   $(".service_detail_menu ul").slideDown( 300 );
      e.stopPropagation();
});
$(document).click(function(){
    $(".service_detail_menu ul").slideUp( 300 );
});

这是我的链接。点击 1st 阅读更多。你可以看到菜单。

http://goo.gl/gMeDgz

谢谢

最佳答案

试试这段代码

  $(".service_detail_menu img").click(function(e) {
    if ($(this).hasClass('active')) {
        $(".service_detail_menu ul").slideUp(300);
        $(this).removeClass('active');
    }
    else {
        $(".service_detail_menu ul").slideDown(300);
        $(this).addClass('active');
    }
  });

  $(document).mouseup(function(e) {
        if ($(e.target).parents(".service_detail_menu").length == 0) {
            $(".service_detail_menu ul").slideUp(300);
            $(".service_detail_menu img").removeClass('active');
        }
  });

关于jquery - 如何在单击 div 时通过 jQuery 显示和隐藏以及在单击 body 时隐藏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24724805/

相关文章:

javascript - 仅使用 css 将按钮跨到对面

javascript - jQuery将<td>字段值转换成 anchor 标签

html - 对于 HTML 和 CSS,如果使用表格设计产品信息表的样式,为什么不也使用表格设计一行呢?

javascript - 添加样式表但不添加样式

javascript - 当ajax表单作为FromData提交时如何删除输入掩码?

jquery - Ipad ( 1 ) : safari keep crashing in my "supersized" slideshow

html - 属性的 <label> 是否必须是唯一的?

html - 选择实现中的选项覆盖问题

javascript - 有没有办法将javascript文件加载到一个文件到页面以优化站点速度?

html - 即使父级设置为 100%,内部 div 也不会拉伸(stretch)到外部 div