小编典典

在DIV元素外部(而不是内部)单击时如何关闭/隐藏DIV元素

html

<div>在页面上存在一个,我需要进行设置,以便当用户在该元素之外单击时它将被隐藏,但是如果用户在该元素内的某个位置单击,则它应该保留。

我尝试使用
e.stopPropagation();

e.preventDefault();

将其添加到该特定DIV的click事件中,但这没有用。

谢谢!


阅读 651

收藏
2020-05-10

共1个答案

小编典典

在弹出式鼠标悬停时切换 标志

var $pop   = $('#popup'),
    notHov = 1; // Hover flag

$pop.hover(function(){ notHov^=1; }); // Toggle flag on hover

$(document).on('mouseup keyup', function( e ){
  if(notHov||e.which==27) $pop.fadeOut();
});

注:
如果页面上的某个地方,你有一个元素 阻止mouseup event冒泡DOM树达document(以注册),您可能希望
创建一个全屏幕 (就像一个页面叠加) 弹出包装
注册点击事件,在代码改变只是选择以上:而不是$(document)$('#popupWrapper')

2020-05-10