javascript中stopImmediatePropagation函数和stopPropagation函数的区别
来源:互联网 发布:php sql注入 编辑:程序博客网 时间:2024/06/09 20:43
在事件处理程序中,每个事件处理程序中间都会有一个event对象,而这个event对象有两个方法,一个是stopPropagation方法,一个是stopImmediatePropagation方法,两个方法只差一个Immediate,这里就说说这两个方法的区别
1、stopImmediatePropagation方法:
stopImmediatePropagation方法作用在当前节点以及事件链上的所有后续节点上,目的是在执行完当前事件处理程序之后,停止当前节点以及所有后续节点的事件处理程序的运行
2、stopPropagation方法
stopPropagation方法作用在后续节点上,目的在执行完绑定到当前元素上的所有事件处理程序之后,停止执行所有后续节点的事件处理程序
区别:
从概念上讲,在调用完stopPropagation函数之后,就会立即停止对后续节点的访问,但是会执行完绑定到当前节点上的所有事件处理程序;而调用stopImmediatePropagation函数之后,除了所有后续节点,绑定到当前元素上的、当前事件处理程序之后的事件处理程序就不会再执行了
举个例子:
//html代码
<div id = "div1"> <button id = "button1"></button></div>
//js代码
var div = document.getElementById("div1"); var btn = document.getElementById("button1"); div.addEventListener("click" , function(){alert("第一次执行");} , true); //1 div.addEventListener("click" , function(){alert("第二次执行");} , true); //2 btn.addEventListener("click" , function(){alert("button 执行");}); //3
在这里,给 1 函数alert后加上stopImmediatePropagation, 那么之后弹出窗口“第一次执行”
但是如果给 1 函数alert后加上stopPropagation , 那么之后会弹出窗口“第一次执行”,“第二次执行”两个窗口
阅读全文
0 0
- javascript中stopImmediatePropagation函数和stopPropagation函数的区别
- stopImmediatePropagation 和stopPropagation的区别
- Flex事件流中有关 【 stopImmediatePropagation()和stopPropagation()】 的区别
- W3C/JQuery中stopImmediatePropagation和stopPropagation的区别
- jQuery 事件中stoppropagation和stopimmediatepropagation的区别
- 事件的stopImmediatePropagation和stopPropagation
- js中preventDefault 与stopPropagation 及 stopImmediatePropagation的区别
- Event的stopImmediatePropagation和stopPropagation方法
- 怎样区别stopPropagation()与stopImmediatePropagation()
- event.stopPropagation() 和event.stopImmediatePropagation()
- AS3 event stopImmediatePropagation() stopPropagation()用法以及区别
- jquery event.stopImmediatePropagation 和event.stopPropagation
- javascript中函数声明和函数表达式的区别
- javascript中substr函数和substring函数的区别
- Javascript中普通函数和构造函数的区别
- preventDefault和stopPropagation的区别
- jQuery Event.stopImmediatePropagation() 函数详解
- js中preventDefault和stopPropagation两个方法的区别
- linux内核设计与实现[第4章 摘抄]
- 封装Debug.Log 游戏发布关闭 Log 减少性能消耗
- Eclipse项目上传码云
- spark.end()
- Spring注解@Component、@Repository、@Service、@Controller区别
- javascript中stopImmediatePropagation函数和stopPropagation函数的区别
- [OC]之 atomic 与 nonatomic的区别
- 记一次查openresty请求耗时问题 Expect:100-continue
- 笔记:udacity计算机导论
- docker创建mysql容器
- vector 指针
- ORA-01653 表空间不足
- Java笔记7
- Linux 守护进程原理及实例(Redis、Nginx)