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 相关文章推荐
表单项的name命名为submit、reset引起的问题
Dec 22 Javascript
有关js的变量作用域和this指针的讨论
Dec 16 Javascript
javascript日期转换 时间戳转日期格式
Nov 05 Javascript
canvas实现粒子时钟效果
Feb 06 Javascript
JavaScript中数组常见操作技巧
Sep 01 Javascript
jquery鼠标悬停导航下划线滑出效果
Sep 29 jQuery
JS获取一个表单字段中多条数据并转化为json格式
Oct 17 Javascript
Vue事件修饰符native、self示例详解
Jul 09 Javascript
element-ui 远程搜索组件el-select在项目中组件化的实现代码
Dec 04 Javascript
微信小程序 this.triggerEvent()的具体使用
Dec 10 Javascript
Servlet返回的数据js解析2种方法
Dec 12 Javascript
小程序中使用css var变量(使js可以动态设置css样式属性)
Mar 31 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
收音机怀古---春雷3P7图片欣赏
2021/03/02 无线电
深入解析php模板技术原理【一】
2008/01/10 PHP
php中随机显示图片的函数代码
2011/06/23 PHP
php数据结构 算法(PHP描述) 简单选择排序 simple selection sort
2011/08/09 PHP
php格式化日期和时间格式化示例分享
2014/02/24 PHP
php时间戳格式化显示友好的时间函数分享
2014/10/21 PHP
PHP静态文件生成类实例
2014/11/29 PHP
PHP查询并删除数据库多列重复数据的方法(利用数组函数实现)
2016/02/23 PHP
php使用yield对性能提升的测试实例分析
2019/09/19 PHP
JavaScript OOP面向对象介绍
2010/12/02 Javascript
无阻塞加载脚本分析[全]
2011/01/20 Javascript
JavaScript利用正则表达式去除日期中的“-”
2014/07/01 Javascript
jQuery中关于ScrollableGridPlugin.js(固定表头)插件的使用逐步解析
2014/07/17 Javascript
element上传组件循环引用及简单时间倒计时的实现
2018/10/01 Javascript
详解vuex之store拆分即多模块状态管理(modules)篇
2018/11/13 Javascript
浅谈Vue.js 中的 v-on 事件指令的使用
2018/11/25 Javascript
深入理解vue中的slot与slot-scope
2019/04/22 Javascript
Vue源码解析之数据响应系统的使用
2019/04/24 Javascript
Android 自定义view仿微信相机单击拍照长按录视频按钮
2019/07/19 Javascript
JavaScript修改注册表实例代码
2020/01/05 Javascript
Node.js学习之内置模块fs用法示例
2020/01/22 Javascript
jquery实现进度条状态展示
2020/03/26 jQuery
[45:18]2018DOTA2亚洲邀请赛 4.3 突围赛 Optic vs iG 第一场
2018/04/04 DOTA
[00:49]完美世界DOTA2联赛10月28日开团时刻:随便打
2020/10/29 DOTA
Python新手在作用域方面经常容易碰到的问题
2015/04/03 Python
好用的Python编辑器WingIDE的使用经验总结
2016/08/31 Python
浅谈配置OpenCV3 + Python3的简易方法(macOS)
2018/04/02 Python
快速解决pandas.read_csv()乱码的问题
2018/06/15 Python
解决Python plt.savefig 保存图片时一片空白的问题
2019/01/10 Python
python 通过SSHTunnelForwarder隧道连接redis的方法
2019/02/19 Python
Numpy一维线性插值函数的用法
2020/04/22 Python
秘书行业自我鉴定范文
2013/12/30 职场文书
党委班子纠正“四风”问题整改措施
2014/10/28 职场文书
2016秋季幼儿园开学寄语
2015/12/03 职场文书
详解Python小数据池和代码块缓存机制
2021/04/07 Python
Python数据结构之队列详解
2022/03/21 Python