点击弹出层以外的区域隐藏弹出层

我们店显示弹出层后,想让其消失,但又不想添加“X”来关闭,可以使用点击弹出层以外的区域来让该层消失的办法。下面如代码:

$(".btn3").click(function(e){

e.stopPropagation();//阻止事件向上冒泡

$(".con-share").removeClass("hide");

}) //显示弹出层

$(document).click(function(e){

if(!$(".con-share").hasClass("hide")){

$(".con-share").addClass("hide")

}

})//判断弹出层是否包含“hide”,没有则添加该属性,隐藏弹出层。

$(".con-share").click(function (e) {

e.stopPropagation();//阻止事件向上冒泡

});

这个例子中需要注意冒泡事件。禁止冒泡事件的出现。

时间: 2024-10-10 17:41:25

点击弹出层以外的区域隐藏弹出层的相关文章

js的事件冒泡和点击其他区域隐藏弹出层

一.前言 在编写页面的时候,我们经常使用到弹出层.对于弹出层,原本的意义就是增加与用户的交互,提升用户的好感度.如果弹出层都没有较好的体验,那何谈通过交互来提升好感... 首先提出几个弹出层的注意点: 弹出层的界面需要统一,不一致的弹出层并不能增加美感,相反还会显得页面布局更加杂乱无章: 弹出层的设计一定要好看,按钮要符合项目的主色调: 弹出层的宽度固定屏幕占比,设置max-width,高度根据内容自适应: 点击其他区域隐藏弹出层... 二.正文 今天,主要说说点击其他区域隐藏弹出层.笔者被这个

点击页面其他区域隐藏弹出层

弹出层简称pop,隐藏方法有两种. 1. pop上阻止冒泡,document上click隐藏pop jquery实现 $("#showPop").on("click", function(e) { $("#pop").show(); $(document).one("click", function() { $("#pop").hide(); }); e.stopPropagation(); }); $(&

bootstrap 弹出框点击其他区域时弹出框不消失选项设置

默认情况下,bootstrap 弹出框点击其他区域时,弹出框会自动关闭,在很多时候,我们可能会希望达到和原生弹出框一样的效果,避免不小心点击其他区域时弹框自动隐藏,尤其是对于一些复杂的表单,重复填写可能会带来很不好的体验效果,所以,我们会希望不会发生这种情况,事实上bootstrap dialog提供了大量的选项可以设置各种dialog的行为和效果.如下所示: <div class="modal fade" id="myModal" tabindex=&quo

react 点击空白处隐藏弹出层

点击空白处隐藏弹出层的原理是:在 document 上绑定事件来隐藏弹出层,这样点击任何元素的时候都会冒泡到 document 上,都会执行隐藏弹出层的功能.然后我们在不需要隐藏弹出层的元素上阻止冒泡即可. class Select extends Component { constructor(props) { super(props); this.state = { selected: props.list[0], showList: false }; this.showList = thi

深入React事件系统(React点击空白部分隐藏弹出层;React阻止事件冒泡失效)

只关注括号内问题的同学,可直接跳转到蓝字部分.(标题起的有点大,其实只讨论一个问题) 两个在React组件上绑定的事件,产生冲突后,使用e.stopPropagation(),阻止冒泡,即可防止事件冲突,毫无问题. 今天是踩了个React事件的坑,需求可以简化为:点击框体以外的部分则隐藏框体.最直接的想法,document上绑定个事件,设置控制显示隐藏的state为false,在框体上绑定个事件,阻止冒泡.这样点击框体内部就不会触发document上的事件. 等写完了,发现一个问题,无法阻止冒泡

Loadrunner11点击录制脚本无响应,IE页面弹不出——解决方案汇总

以前用Loadrunner的时候都没有遇到过这个问题,后来将服务器重装系统(win7)后,重新安装Loadrunner11,浏览器版本刚开始为IE11,后来降为IE8,IE访问部署在虚拟机里的平台能正常访问,但是用LR录制脚本时,点击录制脚本按钮之后,IE页面没有自动弹出,上网查找解决方案,本着死马当活马医的心态把查到的每一种方法都试了一下,最后IE页面弹出的那一瞬差点喊出来\(≧▽≦)/,现在把我的解决步骤作了总结. 录制环境:win7  64位操作系统  IE11(后卸载成IE8)   LR

点击页面其他地方的时候,让弹出框消失

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Typ

遮掩层 的 灰色区域 关闭

生成二维码需要引用 jquery.qrcode.min.js 插件 html: <div class="mask"> <div class="QRCodeContainer"> <p>请扫描下方二维码进行签到</p> <div id="code" class="code"></div> <div id="closeCodeBtn"

jquery点击非div区域隐藏div

点击非div区域隐藏div,如图,点击圆的头像(.person-msg)弹出白色底框(.person-centre).点击圆头像以外的区域隐藏白色底框 html代码 <div class="per_c"> <div class="person-msg pull-right"> <img src="../../res/images/snow_man.jpg"> </div> <dl class=