js实现的点击div区域外隐藏div区域

时间:2021-05-26

首先看下JS的事件模型,JS事件模型为向上冒泡,如onclick事件在某一DOM元素被触发后,事件将跟随节点向上传播,直到有click事件绑定在某一父节点上,如果没有将直至文档的根。

阻止冒泡:1、stopPropagation()对于非IE浏览器。2、cancelBubble属性为true,对于IE浏览器,

而Jquery已经有兼容浏览器的方法,event.stopImmediatePropagation();

<!DOCTYPE html><html><head><meta charset="utf-8" /><script type="text/javascript" src="js/jquery-1.4.4.min.js" ></script><title></title></head><style type="text/css">body{background-color:#999999;}#myDiv{background-color:#FFFFFF;width:250px;height:250px;display:none;      }  </style><body><input id="btn" type="button" value="显示DIV" /><div id="myDiv">This is a div;</div></body><script type="text/javascript">    var myDiv = $("#myDiv");$(function (){$("#btn").click(function (event) {showDiv();//调用显示DIV方法$(document).one("click", function () {//对document绑定一个影藏Div方法$(myDiv).hide();});event.stopPropagation();//阻止事件向上冒泡});$(myDiv).click(function (event) {event.stopPropagation();//阻止事件向上冒泡});});    function showDiv() {$(myDiv).fadeIn();}</script>

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章