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

小网站开发网页设计和网站设计的区别

小网站开发,网页设计和网站设计的区别,东莞人才招聘网最新招聘信息,亚马逊计划裁员1万人如果神明还不帮你,说明他相信你。 目录 引言:捕获阶段:目标阶段:冒泡阶段:事件传播示意图:示例:代码:解读:输出: 引言: DOM 事件的处理通常分为三…

如果神明还不帮你,说明他相信你。

目录

  • 引言:
  • 捕获阶段:
  • 目标阶段:
  • 冒泡阶段:
  • 事件传播示意图:
  • 示例:
    • 代码:
    • 解读:
    • 输出:

引言:

DOM 事件的处理通常分为三个阶段:捕获阶段、目标阶段和冒泡阶段。这三个阶段描述了事件在 DOM 树中传播的顺序。

捕获阶段:

在捕获阶段,事件从 document 开始向下传播,逐层向下到达事件目标(即触发事件的元素)。在这个阶段,事件会经过所有的祖先元素,直到到达目标元素。

  • 顺序:document → html → body → 目标元素
  • 事件监听:可以在任何祖先元素上设置事件监听器,使用 { capture: true } 选项来监听捕获阶段的事件。

目标阶段:

在目标阶段,事件到达目标元素,事件处理程序在这个元素上被执行。此时,事件处理程序可以访问事件对象,获取有关事件的信息。

  • 顺序:目标元素
  • 事件监听:在目标元素上设置的事件监听器会在这个阶段被调用。

冒泡阶段:

在冒泡阶段,事件从目标元素开始向上冒泡,逐层返回到 document。在这个阶段,事件会经过所有的祖先元素,直到到达 document。

  • 顺序:目标元素 → body → html → document
  • 事件监听:可以在任何祖先元素上设置事件监听器,默认情况下,事件监听器会在冒泡阶段被调用。

事件传播示意图:

  • 捕获阶段:document -> html -> body -> target (目标元素)
  • 目标阶段:target (目标元素)
  • 冒泡阶段:target (目标元素) -> body -> html -> document

示例:

代码:

以下是一个简单的示例,展示了如何在捕获和冒泡阶段设置事件监听器:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Event Phases Example</title>
</head>
<body><div id="parent" style="padding: 20px; border: 1px solid black;">Parent<button id="child">Click Me</button></div><script>const parent = document.getElementById('parent');const child = document.getElementById('child');// 捕获阶段的事件监听器parent.addEventListener('click', () => {console.log('Parent (capturing)');}, { capture: true });// 目标阶段的事件监听器child.addEventListener('click', () => {console.log('Child (target)');});// 冒泡阶段的事件监听器parent.addEventListener('click', () => {console.log('Parent (bubbling)');});</script>
</body>
</html>

解读:

当用户点击 “Click Me” 按钮时,事件传播的过程如下:

  • 捕获阶段:事件从 document 开始向下传播,经过 parent 元素。捕获阶段的监听器被调用,输出:Parent (capturing)
  • 目标阶段:事件到达 child 元素(按钮)。目标阶段的监听器被调用,输出:Child (target)
  • 冒泡阶段:事件从 child 元素开始向上冒泡,经过 parent 元素。冒泡阶段的监听器被调用,输出:Parent (bubbling)

输出:

Parent (capturing)
Child (target)
Parent (bubbling)
http://www.dtcms.com/wzjs/545598.html

相关文章:

  • 中国建设银行培训网站沧州企业网站建设
  • c 网站开发案例详解科技画4k纸科幻画
  • 网站建网站建设企业电话移动网站如何做权重
  • 网站建设c云世家网络免费客户管理软件排行
  • 莆田网站建设哪家好网站建设对客户的优势
  • 门户网站自查整改情况报告软件开发流程解读
  • asp.net 网站开发做网站用什么国外的空间比较好
  • 做设计用的素材下载网站百度权重高的网站有哪些
  • 手机网站用什么软件wordpress sns
  • 网站人多怎么优化个人主页模板设计
  • 淄博张店外贸建站公司做旅游网站的项目背景
  • 资源共享网站怎么做蒙牛网站建设报价情况
  • 手机型网站怎么建设品牌网站
  • 网站评论设计网站上做百度广告赚钱么
  • 网站开发属于软件开发服务吗怎样做营销型网站推广ppt
  • 如何做双版网站网站优化快速排名软件
  • 怎么做租房网站如何通过轻淘客做网站
  • 电子商务网站开发的目的是什么wordpress段首空格
  • 天猫网站建设的理由广州市网络预约出租汽车综合业务管理平台
  • 柳州建设网站国际网页浏览器
  • 厦门网站建设兼职wordpress area53
  • 网站建设网站建设哪家好商丘百度推广电话
  • 商城网站建设特点中国能源建设集团有限公司网站
  • 北京建设集团网站首页广东网站系统建设
  • wap网站快速开发wordpress pdf预览
  • 如何建微信微商城网站百度线上推广
  • 关于集团网站建设的请示刷推广链接的网站
  • 长春南关网站建设做跨境电商在什么网站选品
  • 一个叫mit做app的网站考试微网站开发
  • 具有品牌的常州做网站门户网站建设案例