点击事件作用域

Posted shiyiaccn

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了点击事件作用域相关的知识,希望对你有一定的参考价值。

当有这样的需求:点击某些区域(对应html标签)时执行一些操作,点击其它区域执行不同的操作;

 技术分享图片

对于某些操作,假设A为点击有效作用域,那么B为无效域(即点击B无法触发这些操作),有以下两个步骤获得A:

1、判断点击事件是否作用于A本身(即html标签A本身);

$(‘#A‘).is(e.target)  //值为true表示点击事件作用于A

2、判断点击事件是否发生在A内部(即html标签A的子标签)

$(‘#my_birth‘).has(e.target).length==0 //等式成立,则点击事件发生在A外部

于是可进行以下事件监听操作

$(‘#click_show‘).click(function(){

  $(‘#click_show‘).hide();

});
$(document).click(function(e){//e为监听到的点击事件
    if(!$(‘#click_show‘).is(e.target)&&($(‘#click_show‘).has(e.target).length==0)){
        $(‘#click_show‘).show();
    }
});

 

以上是关于点击事件作用域的主要内容,如果未能解决你的问题,请参考以下文章

JS 作用域及作用域链

JS 作用域及作用域链

Android:将片段和弹出窗口的点击事件中生成的变量传递给活动的方法

为啥片段中的晶圆厂不响应点击事件?

作用域是什么?

总结javascript基础概念系列计划分为三个部分:作用域,事件循环,原型链。