当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 阻止JavaScript事件冒泡传递(cancelBubble 、stopPropagation)

Javascript
动态生成js类的实现方法
漂亮的提示信息(带箭头)
实时编辑网页网页文字实时编辑,如同TEXTBOX一般
基于逻辑运算的简单权限系统(实现) JS 版
用 javascript 实现的点击复制代码
AutoSave/自动存储功能实现
JQuery 简便实现页面元素数据验证功能
5 cool javascript apps
jQuery使用手册之 事件处理
dojo 之基础篇
dojo 之基础篇(二)之从服务器读取数据
dojo 之基础篇(三)之向服务器发送数据
Ajax一统天下之Dojo整合篇
javascript对象的property和prototype是这样一种关系
this[] 指的是什么内容 讨论
用prototype实现的简单小巧的多级联动菜单
xml 与javascript结合的问题解决方法
tbody元素支持嵌套的注意方法
推荐dojo学习笔记
JavaScript判断两种格式的输入日期的正确性的代码

Javascript 中的 阻止JavaScript事件冒泡传递(cancelBubble 、stopPropagation)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 157 ::
收藏到网摘: n/a

cancelBubble在IE下有效
stopPropagation在Firefox下有效
复制代码 代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="gb2312">
<head>
<title> 阻止JavaScript事件冒泡传递(cancelBubble 、stopPropagation)</title>
<meta name="keywords" content="JavaScript,事件冒泡,cancelBubble,stopPropagation" />
<script type="text/javascript">
function doSomething (obj,evt) {
alert(obj.id);
var e=(evt)?evt:window.event;
if (window.event) {
e.cancelBubble=true;
} else {
//e.preventDefault();
e.stopPropagation();
}
}
</script>
</head>
<body>
<div id="parent1" onclick="alert(this.id)" style="width:250px;background-color:yellow">
<p>This is parent1 div.</p>
<div id="child1" onclick="alert(this.id)" style="width:200px;background-color:orange">
<p>This is child1.</p>
</div>
<p>This is parent1 div.</p>
</div>
<br />
<div id="parent2" onclick="alert(this.id)" style="width:250px;background-color:cyan;">
<p>This is parent2 div.</p>
<div id="child2" onclick="doSomething(this,event);" style="width:200px;background-color:lightblue;">
<p>This is child2. Will bubble.</p>
</div>
<p>This is parent2 div.</p>
</div>
</body>
</html>