javascript事件的传播基础实例讲解(35)
更新时间:2017年02月14日 16:25:57 作者:厚积薄发2017
这篇文章主要为大家详细介绍了javascript事件的传播基础实例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了js事件的传播,供大家参考,具体内容如下
<html> <head> <meta charset="UTF-8"> <title></title> <style type="text/css"> #box1{ width: 300px; height: 300px; background-color: deepskyblue; } #box2{ width: 200px; height: 200px; background-color: cadetblue; } #box3{ width: 100px; height: 100px; background-color: chocolate; } </style> <script type="text/javascript"> function bind(obj , eventStr , callback){ if(obj.addEventListener){ //如果是正常浏览器 obj.addEventListener(eventStr , callback , false); }else{ //IE8 obj.attachEvent("on"+eventStr , function(){ callback.call(obj); }); } } window.onload = function(){ /* * 事件的传播 * - 关于事件的传播微软和网景公司有着不同的理解 * - 微软公司,认为事件应该是从后代元素向祖先元素传播,即从里向外传播,也就是我们所谓事件的冒泡 * - 网景公司,认为事件应该是从祖先元素向后代元素传播,即从外向里传播,这一阶段我们称为事件的捕获 * - W3C综合了两个公司的方案,将事件的传播分成了三个阶段 * 1.捕获阶段 * - 事件从最外层的元素(document),向目标元素进行事件的捕获 * - 此阶段默认不会触发事件 * 2.目标阶段 * - 目标指的是触发事件的元素,捕获到目标元素则捕获阶段停止 * 3.冒泡阶段 * - 事件从目标元素向祖先元素中冒泡,此时开始触发事件 * - 默认事件都是在冒泡阶段执行的 * * - 事件都是默认在冒泡阶段执行的,一般不需要在捕获阶段触发事件, * 如果希望在捕获阶段执行事件,则需要将addEventListener()的第三个参数修改为true * * - IE8及以下的浏览器没有捕获阶段,也不能设置在捕获阶段触发事件 */ //分别为三个div绑定单击响应函数 var box1 = document.getElementById("box1"); var box2 = document.getElementById("box2"); var box3 = document.getElementById("box3"); bind(box1,"click",function(){ alert(1); }) bind(box2,"click",function(){ alert(2); }) bind(box3,"click",function(){ alert(3); }) }; </script> </head> <body> <div id="box1"> <div id="box2"> <div id="box3"></div> </div> </div> </body> </html>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
JS中使用TextDecoder解码二进制数据(数据流的逐步解码)
JS中使用TextDecoder将二进制数据转换为可读文本字符串,首先,创建TextDecoder对象,使用decode()方法,解码为字符串,,{stream:true}选项允许处理流式数据,适用于大型数据流的逐步解码,TextDecoder广泛应用于WebSocket通信、文件读取、网络响应等场景2024-10-10JS实现显示带倒影的图片横排居中放大展示特效实例【测试可用】
这篇文章主要介绍了JS实现显示带倒影的图片横排居中放大展示功能,可实现点击图片及点击左右按钮滑动切换的效果,涉及javascript针对鼠标事件的响应及页面元素动态操作相关技巧,需要的朋友可以参考下2016-08-08bootstrap+jQuery 实现下拉菜单中复选框全选和全不选效果
这篇文章主要给大家介绍了关于利用bootstrap+jQuery 实现下拉菜单中复选框全选和全不选效果的相关资料,文中给出了完整的示例代码供大家参考学习,对大家具有一定的参考学习价值,需要的朋友下面来一起看看吧。2017-06-06
最新评论