资讯专栏INFORMATION COLUMN

javascript事件机制搞不清楚

xiaoqibTn / 473人阅读

摘要:两种,冒泡和捕获,不对是捕获和冒泡。事件激活后是先进行捕获,然后把函数都进行注册,比如一个元素绑定了多个事件。,判定当前元素,绑或解或跳过

两种,冒泡和捕获,不对是捕获和冒泡。

    document.body.addEventListener("click",function(){console.log("1")},true);
    document.body.addEventListener("click",function(){console.log("4")},false);
    document.querySelector("header").addEventListener("click",function(){console.log("2")},true);
    document.querySelector("header").addEventListener("click",function(){console.log("3")},false);

说明:

先不关注捕获还是冒泡。事件激活后是先进行捕获,然后把函数都进行注册,比如一个元素绑定了多个click事件。

然后判断addEventListener的第三个参数,ture表示捕获,false表示冒泡;

上面的body,header元素绑定了四个事件,ture优于false执行(两个都有,捕获事件优于冒泡),捕获是从body往header(从外到内,对于都是true而言),冒泡是从header往body(从里到外,对于都是false而言)

阻止捕获或者冒泡,抛开这两个东西,也就是阻止事件传播。打开chrome控制台,执行console.dir(window.Event.prototype),关注里面的四个方法initEvent、preventDefault、stopImmediatePropagation、stopPropagation,第一个初始化事件方法,第二个阻止默认行为,第三个百度一下,第四个stop:停止,propagation:传播。

target、currenttarget,判定当前元素,绑或解或跳过

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/85306.html

相关文章

  • 简单的JavaScript组件化实现

    摘要:作为一名前端菜鸟,最近看例子,根据理解自己也简单实现了一下组件的继承和事件机制。公共功能销毁在子类中调用的组件自己的功能的实现有很多种,我用了,的实现比较巧妙。最后记得提供一个销毁组件的方法,一个简单的组件就完成了。 作为一名前端菜鸟,最近看react例子,根据理解自己也简单实现了一下组件的继承和事件机制。 代码在这里 原始的组件写法 (function($) { $.plug...

    Hanks10100 评论0 收藏0
  • JS 异步的实现

    摘要:由于引擎同一时间只执行一段代码这是由单线程的性质决定的,所以每个代码块阻塞了其它异步事件的进行。这意味着浏览器将等待着一个新的异步事件发生。异步的任务执行的顺序是不固定的,主要看返回的速度。 我们经常说JS是单线程的,比如node.js研讨会上大家都说JS的特色之一是单线程的,这样使JS更简单明了,可是大家真的理解所谓JS的单线程机制吗?单线程时,基于事件的异步机制又该当如何,这些知识...

    sihai 评论0 收藏0
  • JavaScript大师必须掌握的12个知识点

    摘要:也不例外,在发布新功能前,最好是一定要对代码进行充分的测试。自从年双十一正式上线,累计处理了亿错误事件,付费客户有金山软件百姓网等众多品牌企业。 译者按: 前端技术涉及的越来越多! 原文: 10 things to learn on the way to becoming a JavaScript Master 译者: Fundebug 为了保证可读性,本文采用意译而非直译。...

    Ethan815 评论0 收藏0
  • JavaScript大师必须掌握的12个知识点

    摘要:也不例外,在发布新功能前,最好是一定要对代码进行充分的测试。自从年双十一正式上线,累计处理了亿错误事件,付费客户有金山软件百姓网等众多品牌企业。 译者按: 前端技术涉及的越来越多! 原文: 10 things to learn on the way to becoming a JavaScript Master 译者: Fundebug 为了保证可读性,本文采用意译而非直译。...

    wean 评论0 收藏0
  • 理解JavaScript中的this关键词

    摘要:除此之外,还有一种情况也会修改,在一些库中传入回调函数,可能会强制改变的绑定,例如在中本例中的就是被强制改变绑定到了触发事件的元素上。它们的第一个参数是一个对象,它们会把这个对象绑定到,接着在调用函数时指定这个。 理解JavaScript中的this关键词 this关键词是JavaScript语言中一个很重要,同时也是一个非常复杂的机制,它同时也是一个很特殊的关键词,它一般会被自动定义...

    paulquei 评论0 收藏0

发表评论

0条评论

xiaoqibTn

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<