原文:要小心 JavaScript 的事件代理

我们知道,如果给 form 里面的 button 元素绑定事件,需要考虑它是否会触发 form 的 submit 行为。除此之外,其它场合给 button 元素绑定事件,你几乎不用担心这个事件会有什么非预期的附加效果,很自然地会这样写事件处理代码: 你之所以放心这么写,是因为这个 button 元素没有使用事件代理,即没有代理任何子元素的事件。 事件代理的意思是,你要为一个元素绑定事件,但你不是直 ...

2020-05-27 17:10 14 1367 推荐指数:

查看详情

关于JavaScript中的事件代理

  今天面试某家公司Web前端开发岗位,前面的问题回答的都还算凑活,并且又问了一下昨天面试时做的一道数组去重问题的解题思路(关于数组去重问题,可以观赏我前几天写的:http://www.cnblogs ...

Wed Sep 16 07:18:00 CST 2015 2 1661
javascript 事件冒泡和事件代理

事件冒泡   简单的讲,当子元素的事件处理函数被触发(如onclick),该事件会从事件源(当前子元素)逐级向上层元素传递,触发祖先元素的 onclik 事件,一直到最外层 html 根元素。   这可能会带来困扰,不必要的事件处理函数被执行了,不过我们可以阻止事件冒泡。事件触发时,会传入一个 ...

Sat Sep 29 01:27:00 CST 2018 0 854
JavaScript事件模型及事件代理

事件模型   JavaScript事件使得网页具备互动和交互性,我们应该对其深入了解以便开发工作,在各式各样的浏览器中,JavaScript事件模型主要分为3种:原始事件模型、DOM2事件模型、IE事件模型。   1.原始事件模型(DOM0级)     这是一种被所有浏览器都支持 ...

Tue May 22 01:17:00 CST 2018 0 1565
javascript事件代理事件委托)原理是怎么实现的

起因: 1、这是前端面试的经典题型,要去找工作的小伙伴看看还是有帮助的; 2、其实我一直都没弄明白,写这个一是为了备忘,二是给其他的知其然不知其所以然的小伙伴们以参考; 概述: 那什么叫事件委托呢?它还有一个名字叫事件代理JavaScript高级程序设计上讲:事件委托就是利用事件冒泡,只 ...

Fri Sep 29 17:24:00 CST 2017 0 1657
JS 事件代理

事件处理器:onclick、onmouseover.... 在传统的事件处理中,你需要为每一个元素添加或者是删除事件处理器。然而,事件处理器将有可能导致内存泄露或者是性能下降——你用得越多这种风险就越大。 JavaScript事件代理:当我们需要对很多元素添加事件的时候,可以通过将事件添加到 ...

Sun Sep 04 17:38:00 CST 2016 0 3026
JS - 事件代理

如果你想给网页添加点JavaScript的交互性,也许你已经听过JavaScript事件代理(event delegation),并且觉得这是那些发烧友级别的JavaScript程序员才会关心的什么费解的设计模式之一。事实上,如果你已经知道怎么添加JavaScript事件 ...

Tue Apr 28 06:09:00 CST 2015 0 2533
react事件代理

参考:https://github.com/youngwind/blog/issues/107 首先回顾以下原生事件的两个方法:event.stopImmediatePropagation 和 event.stopPropagation ,前者可以阻止同一dom上的后续事件的执行以及阻止冒泡 ...

Mon Dec 11 19:55:00 CST 2017 0 1616
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM