zoukankan      html  css  js  c++  java
  • jquery点击空白处关闭弹窗

    需求是点击空白处关闭弹窗,同时弹窗内有点击事件

    一开始的思路是点击弹窗阻止事件冒泡

    不知道是结构太复杂还是怎样,使用event.stopPropagation();无效

    找到了有效的方法后,把内部的点击事件也阻拦掉了

    只能在点击空白处时,判断是否是弹窗范围,看到了一段很好用的代码

    $(document).mouseup(function(e){
    var_con=$('目标区域');//设置目标区域
    if(!_con.is(e.target)&&_con.has(e.target).length===0){//Mark1
    somecode...//功能代码
    }
    });
    /*Mark1的原理:
    判断点击事件发生在区域外的条件是:
    1.点击事件的对象不是目标区域本身
    2.事件对象同时也不是目标区域的子元素
    */
    这是当初在stackoverflow上看到的,非常简单的实现,这里的目标区域就是你的弹出窗口
    

      

  • 相关阅读:
    数组
    css动画
    mui 常用手势
    ejs 用到的语法
    css 高度塌陷
    SQL 用到的操作符
    position: relative;导致页面卡顿
    h5 图片生成
    li之间的间隙问题
    虚拟机扩容mac
  • 原文地址:https://www.cnblogs.com/Anne3/p/11677891.html
Copyright © 2011-2022 走看看