美文网首页web前端之路
JS事件冒泡和事件捕获

JS事件冒泡和事件捕获

作者: 疯也是一种态度_ | 来源:发表于2019-09-25 01:48 被阅读0次

css部分

  <style>
    * {
        margin: 0;
        padding: 0;
    }

    #box1 {
        width: 400px;
        height: 400px;
        background: red;
        margin: 0 auto;
        overflow: hidden;
    }

    #box2 {
        width: 300px;
        height: 300px;
        background: blue;
        margin: 50px auto;
        overflow: hidden;
    }

    #box3 {
        width: 200px;
        height: 200px;
        background: lawngreen;
        margin: 50px auto;
        overflow: hidden;
    }
</style>

<body>
<div id="box1">
    <div id="box2">
        <div id="box3">

        </div>
    </div>
</div>
</body>

JS部分

默认 false , false 是冒泡, true 是事件捕获

事件捕获

假设在box3内部进行点击,那么:事件捕获认为:你点击box3,因为box1在box3外部,所以,box1先捕获到,然后再传递给box3,所以,事件执行顺序是“box1-box2-box3”,这就像你进去房间,必须先进入大院,再进入门一样。

<script>
var box1 = document.getElementById('box1')
var box2 = document.getElementById('box2')
var box3 = document.getElementById('box3')
box1.addEventListener('click', function () {
    console.log('点击了box1')
}, true)  
box2.addEventListener('click', function () {
    console.log('点击了box2')
}, true)
box3.addEventListener('click', function () {
    console.log('点击了box3')
}, true)
// true 从外往里 123 
</script>

事件冒泡

假设在box3内部进行点击,那么:冒泡事件认为:你点击了box3,而box3在box1里内部,所以,也点击了box1,因此执行顺序是 “box3-box2-box1” ,由内往外一步步向上,这很像水里有一个鱼吐了一个水泡,这个水泡往上飘一样,所以叫做“冒泡事件”

<script>
var box1 = document.getElementById('box1')
var box2 = document.getElementById('box2')
var box3 = document.getElementById('box3')
box1.addEventListener('click', function () {
    console.log('点击了box1')
},  false)  
box2.addEventListener('click', function () {
    console.log('点击了box2')
},  false)
box3.addEventListener('click', function () {
    console.log('点击了box3')
},  false)
//  false 从里往外  321
</script>

相关文章

  • vue 阻止事件冒泡,捕获方法

    要想了解 VUE 阻止事件冒泡和捕获方法,首先要了解一下 JS 事件和 JS 阻止事件冒泡,捕获方法 1. js ...

  • JS事件相关基础

    js事件: 键盘事件: JS中的事件冒泡和事件捕获: 1、事件冒泡。如下代码: 点击button事件,连同父元素绑...

  • 图解事件委托

    事件捕获和事件冒泡 说到事件委托我们就不得不提JS中事件的整个历程中的两个机制:事件捕获和事件冒泡。 然而要说这事...

  • 事件基础(2)

    js事件的三个阶段:捕获,目标,冒泡 IE:IE事件流是事件冒泡流 Netscape事件流是事件捕获流 IE事件...

  • js 阻止冒泡 阻止默认事件

    js冒泡和捕获是事件的两种行为,使用event.stopPropagation()起到阻止捕获和冒泡阶段中当前事件...

  • 默认事件

    js冒泡和捕获是事件的两种行为,使用event.stopPropagation()起到阻止捕获和冒泡阶段中当前事件...

  • Javascript 事件代理、冒泡和捕获

    2019开工荒了两天,赶紧开始! 为什么写事件代理、冒泡、捕获,首先冒泡和捕获是js事件的核心基础,事件代理原理来...

  • 事件冒泡和事件捕获

    事件冒泡和事件捕获

  • JS事件冒泡和事件捕获

    谈起JavaScript的 事件,事件冒泡、事件捕获、阻止默认事件这三个话题,无论是面试还是在平时的工作中,都很难...

  • JS事件冒泡和事件捕获

    css部分 JS部分 默认 false , false 是冒泡, true 是事件捕获 事件捕获 假设在box3...

网友评论

    本文标题:JS事件冒泡和事件捕获

    本文链接:https://www.haomeiwen.com/subject/ibptuctx.html