简单解析事件捕捉

本文涉及的产品
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: 简单解析事件捕捉上篇博客说到了事件冒泡,其实在JavaScript中,说到事件冒泡还有两个个不得不提的事件捕获和默认事件,我们先来说一下事件捕获。效果如下图:在这里插入图片描述HTML代码: <div class="box1"> <div class="box2"> <div class="box3"> <div class="box4"></div> </div> </div> </div> 1 2 3 4 5

简单解析事件捕捉




上篇博客说到了事件冒泡,其实在JavaScript中,说到事件冒泡还有两个个不得不提的事件捕获和默认事件,我们先来说一下事件捕获。效果如下图:


在这里插入图片描述

20200603021204695.gif

HTML代码:


<divclass="box1"><divclass="box2"><divclass="box3"><divclass="box4"></div></div></div></div>

CSS代码:

* {
            margin: 0;
            padding: 0;
        }
        .box1 {
            width: 400px;
            height: 400px;
            background: red;
        }
        .box2 {
            width: 300px;
            height: 300px;
            background: yellow;
        }
        .box3 {
            width: 200px;
            height: 200px;
            background: skyblue;
        }
        .box4 {
            width: 100px;
            height: 100px;
            background: green;
        }


JS代码:


// 04事件捕捉
    // addEventListener("事件",function(){},fasle(默认,事件冒泡阶段执行)/true)  
    // 事件监听  
    var oBox1=document.getElementsByClassName("box1")[0];
    var oBox2=document.getElementsByClassName("box2")[0];
    var oBox3=document.getElementsByClassName("box3")[0];
    var oBox4=document.getElementsByClassName("box4")[0];
    oBox1.addEventListener("click",function(ev){
        var ev=ev||window.event;
        console.log("box1");
        // alert("box1");
    },true)
    oBox2.addEventListener("click",function(ev){
        var ev=ev||window.event;
        console.log("box2");
        // alert("box1");
    },true)
    oBox3.addEventListener("click",function(ev){
        var ev=ev||window.event;
        console.log("box3");
        // alert("box1");
    },true)
    oBox4.addEventListener("click",function(ev){
        var ev=ev||window.event;
        console.log("box4");
        // alert("box1");
    },true)

视频讲解链接:
https://www.bilibili.com/video/BV1Ag4y1q7YB/

相关文章
|
4月前
|
存储 开发框架 开发者
QT C++焦点事件:多角度解析实用技巧与方法
QT C++焦点事件:多角度解析实用技巧与方法
907 0
|
4月前
|
Java Android开发
Android Studio入门之按钮触控的解析及实战(附源码 超详细必看)(包括按钮控件、点击和长按事件、禁用与恢复按钮)
Android Studio入门之按钮触控的解析及实战(附源码 超详细必看)(包括按钮控件、点击和长按事件、禁用与恢复按钮)
522 0
|
4月前
|
JavaScript 前端开发 C++
Javaweb之javascript事件的详细解析
1.6 JavaScript事件 1.6.1 事件介绍 如下图所示的百度注册页面,当我们用户输入完内容,百度可以自动的提示我们用户名已经存在还是可以使用。那么百度是怎么知道我们用户名输入完了呢?这就需要用到JavaScript中的事件了。
63 0
|
4月前
|
Web App开发 前端开发
Chrome 浏览器插件 V3 版本 Manifest.json 文件中 Action 的类型(Types)、方法(Methods)和事件(Events)的属性和参数解析
Chrome 浏览器插件 V3 版本 Manifest.json 文件中 Action 的类型(Types)、方法(Methods)和事件(Events)的属性和参数解析
210 0
|
11天前
|
图形学 开发者 UED
Unity游戏开发必备技巧:深度解析事件系统运用之道,从生命周期回调到自定义事件,打造高效逻辑与流畅交互的全方位指南
【8月更文挑战第31天】在游戏开发中,事件系统是连接游戏逻辑与用户交互的关键。Unity提供了多种机制处理事件,如MonoBehaviour生命周期回调、事件系统组件及自定义事件。本文介绍如何有效利用这些机制,包括创建自定义事件和使用Unity内置事件系统提升游戏体验。通过合理安排代码执行时机,如在Awake、Start等方法中初始化组件,以及使用委托和事件处理复杂逻辑,可以使游戏更加高效且逻辑清晰。掌握这些技巧有助于开发者更好地应对游戏开发挑战。
26 0
|
3月前
|
存储 Java API
Java中的CQRS和事件溯源模式解析
Java中的CQRS和事件溯源模式解析
|
4月前
|
JavaScript 前端开发 开发者
深入比较Input、Change和Blur事件:Vue与React中的行为差异解析
深入比较Input、Change和Blur事件:Vue与React中的行为差异解析
|
4月前
|
测试技术 数据库 C++
Qt C++拖放事件探索之旅:多方法深入解析
Qt C++拖放事件探索之旅:多方法深入解析
383 1
|
11月前
|
设计模式 Go
Go语言事件系统设计解析:发布-订阅模式实战
Go语言事件系统设计解析:发布-订阅模式实战
365 0
|
4月前
|
缓存 关系型数据库 MySQL
这个错误提示表明Flink CDC在解析MySQL的二进制日志时,找不到对应表的TableMap事件。
这个错误提示表明Flink CDC在解析MySQL的二进制日志时,找不到对应表的TableMap事件。
170 2

热门文章

最新文章

推荐镜像

更多