js点击任意区域弹出层消失实现代码


Posted in Javascript onDecember 27, 2016

本文实例为大家分享了js点击任意区域弹出层消失的具体代码,供大家参考,具体内容如下

采用jquery element.parents();判断点击区域是否在弹出层上面或者在按钮上面,否则让弹出层消失。

完整代码

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Title</title>
</head>
<body>

<pre>
 parent > child
 在给定的父元素下匹配所有的子元素
</pre>

<div class="help">
 <span class="bnt">我是弹出层</span>
 <ul id="list" class="foo">
 <li><a href="#">第1条记录</a></li>
 <li><a href="#">第2条记录</a></li>
 <li><a href="#">第3条记录</a></li>
 <li><a href="#">第4条记录</a></li>
 </ul>
</div>

<style>
 .bnt{
 width: 100px;height: 50px;background: #777;color: #fff;
 display: block;
 text-align: center;
 line-height: 50px;
 cursor: default;
 }
 .help ul{
 display: none;
 border: 1px solid #aaa;
 }
 a{display: block;padding: 10px;}
</style>

<script src="../jquery.js"></script>
<script>

 (function ($) {
 $('.bnt').click(function(){
  if($(this).hasClass('show')){
  $('.help ul').hide();
  $(this).removeClass('show')
  return ;
  }

  $('.help ul').show();
  $(this).addClass('show')

 })

 document.addEventListener('click',function (e) {
  var parent=$(e.target).parents('.foo,.help');

  if(parent.length===0){
  console.log('不在弹层与按钮区')
  //操作此区域

  $('.help ul').hide();
  $('.bnt').removeClass('show');

  }else{
  console.log('按钮与弹层区')
  }
 })
 })(jQuery);
</script>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
理解JSON:3分钟课程
Oct 28 Javascript
JS中处理与当前时间间隔的函数代码
May 23 Javascript
js获取某月的最后一天日期的简单实例
Jun 22 Javascript
由浅入深讲解Javascript继承机制与simple-inheritance源码分析
Dec 13 Javascript
JavaScript+html5 canvas绘制缤纷多彩的三角形效果完整实例
Jan 26 Javascript
JavaScript正则表达式替换字符串中图片地址(img src)的方法
Jan 13 Javascript
iview通过Dropdown(下拉菜单)实现的右键菜单
Oct 26 Javascript
vue-router懒加载速度缓慢问题及解决方法
Nov 25 Javascript
Node.js折腾记一:读指定文件夹,输出该文件夹的文件树详解
Apr 20 Javascript
如何实现双向绑定mvvm的原理实现
May 28 Javascript
详解django模板与vue.js冲突问题
Jul 07 Javascript
js对象属性名驼峰式转下划线的实例代码
Sep 17 Javascript
JS正则表达式修饰符中multiline(/m)用法分析
Dec 27 #Javascript
jQuery Validate插件自定义验证规则的方法
Dec 27 #Javascript
webuploader模态框ueditor显示问题解决方法
Dec 27 #Javascript
正则中的回溯定义与用法分析【JS与java实现】
Dec 27 #Javascript
Vue.js双向绑定操作技巧(初级入门)
Dec 27 #Javascript
JS实现页面中所有img对象添加onclick事件及新窗口查看图片的方法
Dec 27 #Javascript
JS使用正则实现去掉字符串左右空格的方法
Dec 27 #Javascript
You might like
Windows IIS PHP 5.2 安装与配置方法
2009/06/08 PHP
PHP中array_merge和array相加的区别分析
2013/06/17 PHP
ThinkPHP模板判断输出Present标签用法详解
2014/06/30 PHP
laravel 修改.htaccess文件 重定向public的解决方法
2019/10/12 PHP
javascript编程起步(第二课)
2007/02/27 Javascript
跟着JQuery API学Jquery 之二 属性
2010/04/09 Javascript
JS运动基础框架实例分析
2015/03/03 Javascript
AngularJS基础学习笔记之控制器
2015/05/10 Javascript
JavaScript、tab切换完整版(自动切换、鼠标移入停止、移开运行)
2016/01/05 Javascript
基于jQuery实现动态搜索显示功能
2016/05/05 Javascript
12个非常实用的JavaScript小技巧【推荐】
2016/05/18 Javascript
JavaScript兼容性总结之获取非行间样式案例
2016/08/07 Javascript
JS中跨页面调用变量和函数的方法(例如a.js 和 b.js中互相调用)
2016/11/01 Javascript
原生JS实现图片轮播切换效果
2016/12/15 Javascript
jquery实现简单实用的轮播器
2017/05/23 jQuery
JS实现身份证输入框的输入效果
2017/08/21 Javascript
Vue0.1的过滤代码如何添加到Vue2.0直接使用
2017/08/23 Javascript
快速将Vue项目升级到webpack3的方法步骤
2017/09/14 Javascript
基于jQuery.i18n实现web前端的国际化
2018/05/04 jQuery
elementUI Vue 单个按钮显示和隐藏的变换功能(两种方法)
2018/09/04 Javascript
[42:35]2018DOTA2亚洲邀请赛3月30日 小组赛A组 VG VS OpTic
2018/03/31 DOTA
[01:08:33]OG vs VGJ.T 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
使用python实现生成用户信息
2017/03/20 Python
Tensorflow简单验证码识别应用
2017/05/25 Python
Python3中的列表生成式、生成器与迭代器实例详解
2018/06/11 Python
python实现推箱子游戏
2020/03/25 Python
python里运用私有属性和方法总结
2019/07/08 Python
Python warning警告出现的原因及忽略方法
2020/01/31 Python
罗德与泰勒百货官网:Lord & Taylor
2016/08/12 全球购物
校园之星获奖感言
2014/01/29 职场文书
商场消防演习方案
2014/02/12 职场文书
2014全国两会学习心得体会1000字
2014/03/10 职场文书
教师批评与自我批评材料
2014/10/16 职场文书
不会写演讲稿,快来看看这篇文章!
2019/08/06 职场文书
如何利用js在两个html窗口间通信
2021/04/27 Javascript
mysql数据库入门第一步之创建表
2021/05/14 MySQL