当前位置: 首页 > 图文教程 > 网络编程 > Javascript > js event事件的传递与冒泡处理

Javascript
通过JavaScript脚本复制网页上的一个表格
光标定位等TextRange的操作的范例代码
网页与键盘
下拉菜单
点此处秒后立即下载
繁简字转换功能
用javascript制作放大镜放大图片
一个非常强大完整的web表单验证程序Validator v1.05
[原创]checkbox实现全选的多种方法 不断更新
关于IFRAME 自适应高度的研究
document.all还是document.getElementsByName?
光标的帖子总结(Range的使用)
下拉菜单既可以选择,又可以自己填写
用于table内容排序
匹配html标记的正则
图片向上滚动
常用参考资料(手册)下载或者链接
測試代碼真方便
CSS+JS构建的图片查看器
如何实现iframe(嵌入式帧)的自适应高度

Javascript 中的 js event事件的传递与冒泡处理


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 145 ::
收藏到网摘: n/a

与Netscape相反,IE中的事件传递方向是从事情发生的对象开始,然后依次由该对象向所在的父节点传递。
复制代码 代码如下:

<div>
<table nclick="gotClick(event,'table',this)" id="table">
<tr nclick="gotClick(event,'tr',this)" id="tr">
<td nclick="gotClick(event,'td',this)" id="td">
<input type="button" name="button" value="单击我"
onclick="gotClick(event,'按钮',this);" id="button">
</td>
</tr>
</table>
</div>
<div id='result'>
</div>

js文件
复制代码 代码如下:

function gotClick(event,msg,obj){
var object;
var msgs = msg+" => 被单击了!<br/>";
try{
if (event.target) {//Mozilla
object = event.target;
// alert(document.getElementById(object.id).nodeName+" Mozilla "+msg);
document.getElementById('result').innerHTML +=msgs;
// event.cancelBubble=true;//阻止传递
}
else if(event.srcElement){//IE
object = event.srcElement;
// alert(object.id+" IE "+msg);
// event.cancelBubble=true;//阻止传递
document.getElementById('result').innerHTML +=msgs;
}
}catch(e){
alert(e);
}
}

运行结果是:
按钮 => 被单击了!
td => 被单击了!
tr => 被单击了!
table => 被单击了!