汉堡边栏-隐藏外部点击

时间:2019-01-22 07:13:35

标签: javascript jquery

当有人在外面单击时,我需要隐藏此左侧边栏。

Jsfiddle

我尝试添加此内容

$('.nav').click(function(event){
    event.stopPropagation();
});

,并尝试将.stopPropagation();添加到正文区域,但单击后不起作用。我使用这种错误的方式吗?

1 个答案:

答案 0 :(得分:2)

检查我做的这个小提琴:Fiddle。我用其他div包装了菜单,并检查用户是否单击了该div或在外部。然后我还要检查菜单是否折叠。

  document.addEventListener("click", function(e) {
   var element = document.querySelector('.menu');
   if (e.target !== element && !element.contains(e.target) 
       && hamburger.nav.classList.contains('expanded')) {
         hamburger.doToggle(e);
       }
   });