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 相关文章推荐
jQuery检测返回值的数据类型
Jul 13 Javascript
AngularJS基础 ng-repeat 指令简单示例
Aug 03 Javascript
超详细的JS弹出窗口代码大全
Apr 18 Javascript
Vue.js自定义指令的用法与实例解析
Jan 18 Javascript
Javascript中构造函数要注意的一些坑
Jan 23 Javascript
jQuery实现百度登录框的动态切换效果
Apr 21 jQuery
node.js express中app.param的用法详解
Jul 16 Javascript
详解微信小程序input标签正则初体验
Aug 18 Javascript
如何用JavaScript实现功能齐全的单链表详解
Feb 11 Javascript
小程序云函数调用API接口的方法
May 17 Javascript
微信小程序实现组件顶端固定或底端固定效果(不随滚动而滚动)
Apr 09 Javascript
解决vue单页面应用进入页面加载所有 js 的问题
Aug 12 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
mysql_num_rows VS COUNT 效率问题分析
2011/04/23 PHP
php HandlerSocket的使用
2011/05/02 PHP
解析PHP的session过期设置
2013/06/29 PHP
fromCharCode和charCodeAt 方法
2006/12/27 Javascript
javascript 无提示关闭窗口脚本
2009/08/17 Javascript
jquery 表单进行客户端验证demo
2009/08/24 Javascript
javascript document.compatMode兼容性
2010/02/23 Javascript
js保留两位小数使用toFixed实现
2013/07/29 Javascript
jquery easyui combobox模糊过滤(示例代码)
2013/11/30 Javascript
JavaScript简单实现弹出拖拽窗口(一)
2016/06/17 Javascript
JS创建对象的写法示例
2016/11/04 Javascript
微信小程序 删除项目工程实现步骤
2016/11/10 Javascript
整理一些最近经常遇到的前端面试题
2017/04/25 Javascript
vue快捷键与基础指令详解
2017/06/01 Javascript
Vue项目中最新用到的一些实用小技巧
2018/11/06 Javascript
Vue.js计算机属性computed和methods方法详解
2019/10/12 Javascript
python每次处理固定个数的字符的方法总结
2013/01/29 Python
在SAE上部署Python的Django框架的一些问题汇总
2015/05/30 Python
Python3实现抓取javascript动态生成的html网页功能示例
2017/08/22 Python
更改Python的pip install 默认安装依赖路径方法详解
2018/10/27 Python
python 实现的发送邮件模板【普通邮件、带附件、带图片邮件】
2019/07/06 Python
基于python+selenium的二次封装的实现
2020/01/06 Python
django自定义非主键自增字段类型详解(auto increment field)
2020/03/30 Python
伦敦最著名的老字号百货公司:Selfridges(塞尔福里奇百货)
2016/07/25 全球购物
Photobook澳大利亚:制作相片书,婚礼卡,旅行相簿
2017/01/12 全球购物
美国礼品卡交易网站:Cardpool
2018/08/27 全球购物
全球独特生活方式产品和礼品购物网站:AHAlife
2018/09/18 全球购物
美国在线购物频道:Shop LC
2019/04/21 全球购物
生日寿宴答谢词
2014/01/19 职场文书
党员干部群众路线个人整改措施
2014/09/18 职场文书
团党委领导干部党的群众路线教育实践活动个人对照检查材料思想汇
2014/10/05 职场文书
升学宴答谢词
2015/01/05 职场文书
高考学习决心书
2015/02/04 职场文书
Python代码,能玩30多款童年游戏!这些有几个是你玩过的
2021/04/27 Python
MySQL基于索引的压力测试的实现
2021/11/07 MySQL
Vue3实现简易音乐播放器组件
2022/08/14 Vue.js