当前位置: 首页 > news >正文

建设银行网站地址全国疫情一览表

建设银行网站地址,全国疫情一览表,全网营销软件,网站开发人员结构配比一、事件传播 1、概述 (1)当事件发生在DOM元素上时,该事件并不完全发生在那个元素 (2)在冒泡阶段中,事件冒泡或向上传播至父级、祖父级、祖父的父级,直到 window 为止 (3&#x…

一、事件传播

1、概述

(1)当事件发生在DOM元素上时,该事件并不完全发生在那个元素

(2)在冒泡阶段中,事件冒泡或向上传播至父级、祖父级、祖父的父级,直到 window 为止

(3)在捕获阶段中,事件从 window 开始,向下触发元素、事件或 event.target

2、事件传播的三个阶段

(1)捕获阶段——事件从 window 开始,然后向下到每个元素,直到到达目标元素

(2)目标阶段——事件已达到目标元素

(3)冒泡阶段——事件从目标元素冒泡,然后上升到每个元素,直到到达 window


二、事件冒泡

1、概述

(1)当事件发生在DOM元素上时,该事件并不完全发生在那个元素上

(2)在冒泡阶段、事件冒泡或者事件发生在它的父级,祖父级,祖父的父级,直到到达 window 为止

2、代码实例

(1)HTML结构

<div class="grandparent"><div class="parent"><div class="child">1</div></div>
</div>

(2)对应的JS代码

function addEvent(el, event, callback, isCapture = false) {if (!el || !event || !callback || typeof callback !== 'function') return;if (typeof el === 'string') {el = document.querySelector(el);};el.addEventListener(event, callback, isCapture);
}addEvent(document, 'DOMContentLoaded', () => {const child = document.querySelector('.child');const parent = document.querySelector('.parent');const grandparent = document.querySelector('.grandparent');addEvent(child, 'click', function (e) {console.log('child');});addEvent(parent, 'click', function (e) {console.log('parent');});addEvent(grandparent, 'click', function (e) {console.log('grandparent');});addEvent(document, 'click', function (e) {console.log('document');});addEvent('html', 'click', function (e) {console.log('html');})addEvent(window, 'click', function (e) {console.log('window');})});

addEventListener 方法具有第三个可选参数 useCapture,其默认值为 false

事件将在冒泡阶段中发生,如果为 true,则事件将在捕获阶段中发生。如果单击 child 元素,它将分别在控制台上记录 childparentgrandparenthtmldocument window,这就是事件冒泡


三、事件捕获

1、概述

(1)当事件发生在 DOM 元素上时,该事件并不完全发生在那个元素上

(2)在捕获阶段,事件从 window 开始,一直到触发事件的元素

2、代码实例

(1)HTML 结构

<div class="grandparent"><div class="parent"><div class="child">1</div></div>
</div>

(2)对应的JS代码

function addEvent(el, event, callback, isCapture = false) {if (!el || !event || !callback || typeof callback !== 'function') return;if (typeof el === 'string') {el = document.querySelector(el);};el.addEventListener(event, callback, isCapture);
}addEvent(document, 'DOMContentLoaded', () => {const child = document.querySelector('.child');const parent = document.querySelector('.parent');const grandparent = document.querySelector('.grandparent');addEvent(child, 'click', function (e) {console.log('child');});addEvent(parent, 'click', function (e) {console.log('parent');});addEvent(grandparent, 'click', function (e) {console.log('grandparent');});addEvent(document, 'click', function (e) {console.log('document');});addEvent('html', 'click', function (e) {console.log('html');})addEvent(window, 'click', function (e) {console.log('window');})});

addEventListener 方法具有第三个可选参数 useCapture,其默认值为 false

事件将在冒泡阶段中发生,如果为 true,则事件将在捕获阶段中发生。如果单击 child 元素,它将分别在控制台上打印 windowdocumenthtmlgrandparent parent,这就是事件捕获。

http://www.khdw.cn/news/50639.html

相关文章:

  • 网站开发公司php工资windows优化大师下载安装
  • 揭阳市建设局网站seo黑帽技术工具
  • 网站建设的功能都需要有哪些方面上海推广seo
  • 网页制作公司怎么做班级优化大师客服电话
  • 做网站需要考虑seo吗做网站的软件有哪些
  • wordpress 商店主题seo是什么意思怎么解决
  • 网页qq直接登录聊天朝阳区seo搜索引擎优化怎么样
  • 怎么免费创建网站营销网页
  • 如何知道网站是否被kseo培训
  • 网站设计服务表百度下载安装免费版
  • 怎样做网站手机和电脑通用推广文案范例
  • wordpress自己写界面kj6699的seo综合查询
  • 淄博网站开发网泰好百度网盘app下载安装
  • 建站套餐推荐国外seo工具
  • 网站页面设计风格百度快照收录入口
  • 网站设计是怎么做的英文谷歌优化
  • 没有域名 怎么做网站链接长沙整站优化
  • 乐清做网站公司哪家好网络营销师证书怎么考
  • 四川省城乡建设网网站互联网精准营销
  • 网站免费源代码营业推广
  • 没网站怎么做app网红推广一般怎么收费
  • 网站建设操作试题百度关键词投放
  • 网站建设论文开题报告范文下载优化大师安装桌面
  • 网站没流量网站搭建教程
  • 亚马逊网站做外贸百度竞价在哪里开户
  • 网站建设中图片是什么意思龙岗网站建设公司
  • 济南免费网站建站模板信息互联网推广
  • 网站设计推广方案网站页面设计模板
  • 旅游网站系统seo网络推广机构
  • dsp投放方式seo网站推广软件 快排