首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JS事件流、事件冒泡、阻止冒泡、事件捕获(一看就懂)

鼠标点击、鼠标移动、鼠标滚动、按下键盘,浏览器窗口大小的改变,网页加载完成,关闭网页等等都会发生事件。 2、什么是事件流 事件流,描述的是页面中接受事件的顺序。...事件句柄在冒泡阶段执行 从上面的表格中,可以看到参数值useCapture,为true的时候,事件在捕获过程中就会执行。...div2 的时候,会先弹出 你点击了div2 的弹框后,再弹出 你点击了div1 的弹框。...如果将div1的addEventListener方法中的最后的布尔参数值改成true,来看看什么效果: div1" id="div1"> div2...); 当点击子元素 div2 的时候,会先弹出 你点击了div1 的弹框后,再弹出 你点击了div2 的弹框。

16.6K64
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    JavaWeb——JavaScript精讲之DOM、BOM对象与案例实战(动态添加删除表格)

    上一博文种讲解了JavaScript基础的ECMAScript,包括基本语法和部分对象,本文中继续讲解JavaScript中比较重要的两部分内容BOM、DOM及事件,后文中有对应的实战练习。...事件的功能就是,某些组件被执行了某些操作后,触发某些代码的执行,如何绑定事件?...,通过元素属性的className属性来设置class的属性值,应用较多; 5、动态表格案例实战 1)添加表格的实现思路: * 1、给添加按钮绑定单击事件 * 2、获取文本框内容 * 3、创建td,设置...td的文本为文本框的内容 * 4、创建tr,将td添加到tr中 * 5、获取table,将tr添加到table中 2)删除表格的实现思路: * 1、确定点击的是哪一个超链接 * 2、再删除 内容 * 3、创建td,设置td的文本为文本框的内容 * 4、创建tr,将td添加到tr中 * 5、获取table,将

    2.2K40

    前端基础-事件对象

    事件发生以后,系统会调用我们写好的事件处理程序 系统会在调用处理程序时,将事件发生时有关事件的一切信息,封装成一个对象, 作为参数传给监听函数(事件处理程序),我们把这个对象称为 事件对象。...有关事件发生的一切信息,都包含在这个事件对象中; 根据事件类型的不同,事件对象中包含的信息也有所不同; 如点击事件中,包含鼠标点击的横纵坐标位置,键盘事件中,包含键盘的键值等; ...4.2 事件对象中的常用属性及方法 4.2.1属性 event.bubbles:属性返回一个布尔值,表示当前事件是否会冒泡; event.eventPhase:返回一个整数值,表示事件流在传播阶段的位置...event.stopPropagation(): 方法阻止事件在DOM中继续传播,防止再触发定义在别的节点上的监听函数 div2">2 var d2 = document.getElementById('div2'); var d1 = document.getElementById('div1');

    48510

    前端基础-事件

    2.3 三种事件绑定比较 this关键字 在JavaScript中,每一个函数的内部都存在一个this关键字,其随着运行环境的不同,其指向也是不同的。...但是处理函数中的 this 指向的选中的对象; 第三种:addEventListener方法可以针对同一个元素的同一个事件,添加多个监听处理函数。...处理函数中的 this 指向的也是选中的元素; 2.4 事件类型 事件类型一览表: https://developer.mozilla.org/zh-CN/docs/Web/Events 2.3.1 页面事件...'); } 2.4 事件的传播 三个包裹着的DIV,都绑定了点击事件,问: 当点击 div1 时,会发生什么现象?...当点击div1时,触发 事件1,但是,紧跟着,事件2和事件3也被触发了; 这种现象,我们称为 事件冒泡 在JS中当一个事件发生以后,它会在不同的DOM节点之间传播。

    1.3K10

    Vue Template 修饰符和简写,让开发效率有所提高

    .capture让我们捕获事件。 也就是说,当我们在内部元素中运行事件处理程序时,相同的事件处理程序也将在外部元素中运行。...div2有capture关键字,所以此时冒泡的顺序发生了改变 正常情况下: 点击div3一层一层冒泡,先div3=》div2=》div1 使用了关键字: 点击div3时,先div2=》div3=》div1....once 修饰符的作用是:点击事件将只会触发一次 passive 作用   详情请参考MDN(https://developer.mozilla.org...)中关于addEventListener...因为滚动监听过程中,移动每个像素都会产生一次事件,每次都使用内核线程查询prevent会使滑动卡顿。我们通过passive将内核线程查询跳过,可以大大提升滑动的流畅度。...v-on指令具有多个修饰符,用于控制事件处理程序的调用方式。 另外,v-model指令也具有一些修饰符,可让我们将输入自动转换为数字或修剪输入中的空格。 v-on和v-bind也有简写形式。

    57210

    将 Bean 放入 Spring 容器中的五种方式 !

    来源:blog.csdn.net/weixin_43741092/article/details/120176466/ 将bean放入Spring容器中有哪些方式?...我们知道平时在开发中使用Spring的时候,都是将对象交由Spring去管理,那么将一个对象加入到Spring容器中,有哪些方式呢,下面我就来总结一下 1、@Configuration + @Bean...只是Spring的处理方式不同,它和Spring Boot中的自动导入配置文件 延迟导入有关,非常重要。...加入到容器中,注意,我没有向容器中注入 Person, 而是直接注入的 PersonFactoryBean 然后从容器中拿Person这个类型的bean,成功运行。...最终成功将person加入到applicationContext中,上述的几种方式的具体原理,我后面会进行介绍。

    33620

    DOM--文档对象模型

    DOM中文名文档对象模型,英文名Document Object Model,我们简称为DOM,是针对html和xml文档的一种API,将html以一种树状结构呈现出来,可以更直观去研究文档结构,我们将这种树状文档结构称为...DOM中文名文档对象模型,英文名Document Object Model,我们简称为DOM,是针对html和xml文档的一种API,将html以一种树状结构呈现出来,可以更直观去研究文档结构,我们将这种树状文档结构称为...--DOM树,或者节点树,一样的概念 js通过dom节点,可以对文档的html标签,属性,css样式,以及具体的内容做出修改,并对页面中的所有事件进行响应 二、节点树 1.节点类型 文档节点--Document...一个是元素内容,一个是文本内容 div1">第一个div div2">第二个div 第三个div...('div1').outerHTML console.log(div1) // div1">第一个div var div2 = document.getElementById

    1.1K20

    jQuery文档对象模型DOM的实际应用

    DOM 在 JavaScript 课程中我们详细的探讨过,它是一种文档对象模型。方便开发者对 HTML 结构元素内容进行展示和修改。...在 JavaScript 中,DOM 不但内容庞大繁杂,而且我们开发的过程中需要考虑更多的兼容性、扩展性。...在 jQuery 中,已经将最常用的 DOM 操 作方法进行了有效封装,并且不需要考虑浏览器的兼容性,对于之前的DOM是一颗岑天大树枝繁叶茂让我们遥不可及,那么jQuery的DOM树,就是一个简笔画的小树... div2 div3 div4 div1">我是DIV1...$('body').append($('div').clone(true)); //复制一个节点添加到 HTML 中 注:clone(true)参数可以为空,表示只复制元素和内容,不复制事件行为。

    1.2K30

    HTML5 学习总结(二)——HTML5新增属性与表单元素

    menuitem 属性: label:菜单项显示的名称 icon:在菜单项左侧显示的图标 onclick:点击菜单项触发的事件 1.2、contentEditable 规定是否可编辑元素的内容 属性值...: true -----可以编辑元素的内容 false -----无法编辑元素的内容 inherit -----继承父元素的contenteditable属性 当为空字符串时,效果和true一致。...("div1"); div2 = document.getElementById("div2"); div3 = document.getElementById...1.10、autocomplete自动补全属性 当表单元素设置了自动完成功能后,会记录用户输入过的内容,双击表单元素会显示历史输入。...2.1、表单结构更自由 在HTML5中表单完全可以放在页面任何位置,然后通过新增的form属性指向元素所属表单的id值,即可关联起来。 <!

    3.5K70

    前端之jquery函数库

    var $div1 = $('#div1'); var $div2 = $('#div2'); alert($div1.length); // 弹出1 alert($div2.length); // 弹出...@#$%^&*]{6,20}$/; //手机号码验证: var rePhone = /^1[34578]\d{9}$/;  事件冒泡 什么是事件冒泡  在一个对象上触发某类事件(比如单击onclick...,它有两种情况: 1、移动现有标签的位置 2、将新创建的标签插入到现有的标签中 创建新标签 var $div = $(''); //创建一个空的div var $div2 = $('...div1"> 2、prepend()和prependTo():在现存元素的内部,从前面放入元素 3、after()和insertAfter():在现存元素的外部,从后面放入元素...4、before()和insertBefore():在现存元素的外部,从前面放入元素 删除标签 $('#div1').remove(); javascript对象   javascript中的对象,可以理解成是一个键值对的集合

    5.2K20

    E006Web学习笔记-JavaScript(四):DOM

    一、概述 1、简介 Document Object Model文档对象模型; 将标记语言文档的各个部分,封装为对象,可以使用这些对象,对标记语言文档进行CRUD(增删改查)的动态操作; 2、标准 W3C...注释对象; Node节点对象,是其他5个的父对象; XML DOM——针对XML文档的标准模型; HTML DOM——针对HTML文档的标准模型; 我们需要学习的内容 = 核心DOM + HTML DOM...Element对象 1、创建/获取 通过document对象; 2、方法 element.setAttribute()设置或者改变指定属性并指定值; element.removeAttribute()从元素中删除指定的属性..." style="width: 200px;height: 200px;background-color: #FF0000;"> div1 div2"style="width...= document.getElementById("div1"); var div2 = document.getElementById("div2"); var a = document.getElementsByTagName

    5710
    领券