Javascript防止事件冒泡实例
2014-04-30 10:37
387 查看
什么是事件冒泡:
在一个对象上触发某类事件(比如单击onclick事件),如果此对象定义了此事件的处理程序,那么此事件就会调用这个处理程序,如果没有定义此事件处理程序或者事件返回true,那么这个事件会向这个对象的父级对象传播,从里到外,直至它被处理(父级对象所有同类事件都将被激活),或者它到达了对象层次的最顶层,即document对象(有些浏览器是window)。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>事件处理</title>
</head>
<div onclick="showMsg(this,event)" id="outSide" style="width:100px; height:100px; background:#000; padding:50px">
<div onclick="showMsg(this,event)" id="inSide" style="width:100px; height:100px; background:#CCC;padding:60px"></div>
</div>
<script type="text/javascript">
//阻止事件冒泡后,你点击灰色盒子,整个过程只弹一次对话框了(注意与默认情况对比)
function showMsg(obj,e)
{
alert(obj.id);
stopBubble(e)
}
//阻止事件冒泡函数
function stopBubble(e)
{
if (e && e.stopPropagation)
e.stopPropagation()
else
window.event.cancelBubble=true
}
</script>
</html>
在一个对象上触发某类事件(比如单击onclick事件),如果此对象定义了此事件的处理程序,那么此事件就会调用这个处理程序,如果没有定义此事件处理程序或者事件返回true,那么这个事件会向这个对象的父级对象传播,从里到外,直至它被处理(父级对象所有同类事件都将被激活),或者它到达了对象层次的最顶层,即document对象(有些浏览器是window)。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>事件处理</title>
</head>
<div onclick="showMsg(this,event)" id="outSide" style="width:100px; height:100px; background:#000; padding:50px">
<div onclick="showMsg(this,event)" id="inSide" style="width:100px; height:100px; background:#CCC;padding:60px"></div>
</div>
<script type="text/javascript">
//阻止事件冒泡后,你点击灰色盒子,整个过程只弹一次对话框了(注意与默认情况对比)
function showMsg(obj,e)
{
alert(obj.id);
stopBubble(e)
}
//阻止事件冒泡函数
function stopBubble(e)
{
if (e && e.stopPropagation)
e.stopPropagation()
else
window.event.cancelBubble=true
}
</script>
</html>
相关文章推荐
- JavaScript 防止事件冒泡
- javascript事件冒泡实例详解和jquery阻止事件冒泡的两种方法
- JavaScript捕捉事件和阻止冒泡事件实例分析
- JavaScript中事件冒泡之实例理解
- JavaScript事件冒泡与事件捕获实例分析
- javascript中防止IE事件冒泡
- JavaScript的防止冒泡事件
- javascript事件冒泡实例分析
- JavaScript 事件冒泡应用实例分析
- javascript事件冒泡实例分析
- JavaScript事件冒泡应用实例
- JavaScript 事件冒泡应用实例分析
- 阻止JavaScript事件冒泡传递
- javascript事件冒泡和事件捕获详解
- javascript阻止事件冒泡
- JavaScript事件委托技术实例分析
- javascript 事件冒泡机制
- 我的JavaScript回顾之路_05—0210—js和jq绑定事件的区别/事件冒泡
- JavaScript事件冒泡简介及应用
- 阻止JavaScript事件冒泡传递(cancelBubble 、stopPropagation)