点击事件作用域
程序员文章站
2022-04-05 10:37:37
当有这样的需求:点击某些区域(对应html标签)时执行一些操作,点击其它区域执行不同的操作; 对于某些操作,假设A为点击有效作用域,那么B为无效域(即点击B无法触发这些操作),有以下两个步骤获得A: 1、判断点击事件是否作用于A本身(即html标签A本身); 2、判断点击事件是否发生在A内部(即ht ......
当有这样的需求:点击某些区域(对应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(); } });
下一篇: JavaScript匿名函数和闭包