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

JavaScript 事件流

JavaScript与HTML之间的交互是通过事件实现的,而用户与浏览器页面的互动也是通过事件来实现的事件就是文档或浏览器窗口中发生的一些特定的交互瞬间,所以分为两种事件,一是发生在 浏览器对象(BOM)上的事件,一是发生在 文档对象(DOM)上的事件。
浏览器规定了两种事件流模型: 捕获型事件流 冒泡型事件流
页面触发一个事件时,会按照一定的顺序来响应事件,事件的响应过程为事件流。
在实际中,事件流包括了三个阶段:事件捕获阶段,处于目标阶段,事件冒泡阶段,当点击一个div元素时,以下就是事件流的顺序:
1. 顶级对象(window)接收到click事件,然后逐级向下捕获
2. 目标元素(div)接收到到事件
3. 对事件做出响应,逐级向上冒泡到顶级对象。
事件冒泡是目标元素接受事件,然后逐级向上传播到顶级元素为止。
<!DOCTYPE html>
<html>
<head></head>
<body><div>click me</div>
</body>
</html>

点击div元素,click事件会沿着DOM树向上传播,在每一级节点都会发生,冒泡顺序为:div -> body -> html -> document。

事件捕获与事件冒泡是相反的,是顶级元素先接收到事件,再逐级向下传播到目标元素为止
同样是以上示例,document对象会先接收到click事件,然后沿着DOM树向下传播到事件的目标元素,捕获顺序为:document -> html -> body -> div,浏览器都是从window对象开始捕获的。

相关文章:

JavaScript 事件流

JavaScript与HTML之间的交互是通过事件实现的&#xff0c;而用户与浏览器页面的互动也是通过事件来实现的事件就是文档或浏览器窗口中发生的一些特定的交互瞬间&#xff0c;所以分为两种事件&#xff0c;一是发生在 浏览器对象&#xff08;BOM&#xff09;上的事件&#xff0c;…...

HTML——5.表单、框架、颜色

一、表单 HTML 表单用于在网页中收集用户输入的数据&#xff0c;例如登录信息、搜索查询等。HTML 提供了一系列的表单元素&#xff0c;允许用户输入文本、选择选项、提交数据等。 <!DOCTYPE html> <html lang"en"> <head> <meta charset&q…...

Docker、Kubernetes之间的区别

比较容器化工具&#xff1a;了解 Docker、Kubernetes 在应用程序部署和管理方面的差异。 基本概述 Docker 是一个流行的容器化平台&#xff0c;允许开发人员在容器中创建、部署和运行应用程序。 Docker 提供了一组工具和 API&#xff0c;使开发人员能够构建和管理容器化应用程…...

【21-40】计算机网络基础知识(非常详细)从零基础入门到精通,看完这一篇就够了

【21-40】计算机网络基础知识&#xff08;非常详细&#xff09;从零基础入门到精通&#xff0c;看完这一篇就够了 以下是本文参考的资料 欢迎大家查收原版 本版本仅作个人笔记使用21、HTTPS是如何保证数据传输的安全&#xff0c;整体的流程是什么&#xff1f;&#xff08;SSL是…...

软考111-上午题-【计算机网络】-URL和DNS

一、URL解析 org&#xff1a;各类组织结构&#xff08;非盈利团队&#xff09; 1-1、顶级域 顶级域名是域名的最后一个部分&#xff0c;即是域名最后一点之后的字母&#xff0c;例如&#xff1a;www.baidu.com这个域名中&#xff0c;顶级域是.com&#xff08;或.COM&#xff…...

EasyCVR视频汇聚平台海康Ehome2.0与5.0设备接入时的配置区别

安防视频监控/视频集中存储/云存储/磁盘阵列EasyCVR平台可拓展性强、视频能力灵活、部署轻快&#xff0c;可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等&#xff0c;以及支持厂家私有协议与SDK接入&#xff0c;包括海康Ehome、海大宇等设备的SDK等。平台既具备传统安…...

echarts实现炫酷科技感的流光效果

前言&#xff1a; echarts实现炫酷科技感的流光效果 效果图&#xff1a; 实现步骤&#xff1a; 1、引入echarts,直接安装或者cdn引入 npm i echarts https://cdn.jsdelivr.net/npm/echarts5.4.3/dist/echarts.min.js 2、封装 option方法&#xff0c;第一个数据是折线数据&a…...

从多模态生物图数据中学习Gene的编码-MuSeGNN

由于数据的异质性&#xff0c;在不同的生物医学背景下发现具有相似功能的基因对基因表示学习提出了重大挑战。在本研究中&#xff0c;作者通过引入一种称为多模态相似性学习图神经网络的新模型来解决这个问题&#xff0c;该模型结合了多模态机器学习和深度图神经网络&#xff0…...

Redis Desktop Manager可视化工具

可视化工具 Redis https://www.alipan.com/s/uHSbg14XmsL 提取码: 38cl 点击链接保存&#xff0c;或者复制本段内容&#xff0c;打开「阿里云盘」APP &#xff0c;无需下载极速在线查看&#xff0c;视频原画倍速播放。 官网下载&#xff08;不推荐&#xff09;&#xff1a;http…...

ARM汇编与逆向工程:揭秘程序背后的神秘世界

文章目录 一、ARM汇编语言&#xff1a;底层世界的密码二、逆向工程&#xff1a;软件世界的侦探工作三、ARM汇编与逆向工程的完美结合四、ARM汇编逆向工程的风险与挑战五、ARM汇编逆向工程的未来展望《ARM汇编与逆向工程 蓝狐卷 基础知识》内容简介作者简介译者简介ChaMd5安全团…...

idea使用docker将Java项目生成镜像并使用

1&#xff1a;开启docker 远程访问 使用 vim 编辑docker服务配置文件 vim /lib/systemd/system/docker.service [Service] Typenotify # the default is not to use systemd for cgroups because the delegate issues still # exists and systemd currently does not suppor…...

clickhouse sql使用2

1、多条件选择 multiIf(cond_1, then_1, cond_2, then_2, …, else) select multiIf(true,0,1) 当第一条件不成立看第二条件判断 第一个参数条件参数&#xff0c;第二参数条件成立时走 2、clickhouse 在计算时候长出现NaN和Infinity异常处理 isNaN()和isInfinite()处理...

jrebel

JRebel最新版&#xff08;2024.1.2&#xff09;在线激活_jrebel 激活 2024-CSDN博客 JRebelXRebel热部署插件激活支持IDEA2023.1_jrebel and xrebel 激活-CSDN博客...

【单片机家电产品学习记录--红外线】

单片机家电产品学习记录–红外线 红外手势驱动电路&#xff0c;&#xff08;手势控制的LED灯&#xff09; 原理 通过红外线对管&#xff0c;IC搭建的电路&#xff0c;实现灯模式转换。 手势控制灯模式转换&#xff0c;详细说明 转载 1《三色调光LED台灯电路》&#xff0c…...

Java入门教程||Java Applet基础

Java Applet基础 applet是一种Java程序。它一般运行在支持Java的Web浏览器内。因为它有完整的Java API支持,所以applet是一个全功能的Java应用程序。 如下所示是独立的Java应用程序和applet程序之间重要的不同&#xff1a; Java中applet类继承了 java.applet.Applet类Applet…...

Python可视化概率统计和聚类学习分析生物指纹

&#x1f3af;要点 &#x1f3af;使用Jupyter Notebook执行Dash 应用&#xff0c;确定Dash输入输出&#xff0c;设计回调函数&#xff0c;Dash应用中包含函数。&#x1f3af;使用Plotly绘图工具&#xff1a;配置图对象选项&#xff0c;​将图转换为HTML、图像。使用数据集绘图…...

yolo v8 教程(不出5行代码让你学会)

Solving environment: failedPackagesNotFoundError: The following packages are not available from current channels:- python3.8https://github.com/ultralytics 下滑来到 先来介绍为什么写这篇博客&#xff0c; 一. 是我之前的yolov5的博客挺多人访问的&#xff0c;但是…...

MongoDB集合结构分析工具Variety

工具下载地址&#xff1a;GitHub - variety/variety: Variety: a MongoDB Schema Analyzer 对于Mongo这种结构松散的数据库来说&#xff0c;如果想探查某个集合的结构&#xff0c;通过其本身提供的功能很不方便&#xff0c;通过调研发现一个很轻便的工具--variety&#xff0c;…...

详解Qt中访问数据库

在Qt中访问数据库涉及到几个关键步骤&#xff0c;主要包括加载数据库驱动、建立数据库连接、执行SQL语句、读取结果等。下面将详细介绍这些步骤&#xff0c;并给出一个简单的示例&#xff0c;这里假设使用的是SQLite数据库。 记得首先在pro文件中添加QT sql 1. 加载数据库驱动…...

《QT实用小工具·三》偏3D风格的异型窗体

1、概述 源码放在文章末尾 可以在窗体中点击鼠标左键进行图片切换&#xff0c;项目提供了一些图片素材&#xff0c;整体风格偏向于3D类型&#xff0c;也可以根据需求自己放置不同的图片。 下面是demo演示&#xff1a; 项目部分代码如下所示&#xff1a; 头文件部分&#xff…...

OpCore-Simplify:如何用零代码工具在15分钟内完成黑苹果配置

OpCore-Simplify&#xff1a;如何用零代码工具在15分钟内完成黑苹果配置 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify 对于想要在PC上安装macOS的用…...

最近折腾了一波心音信号(PCG)分类的小项目,踩了不少坑也攒了点能直接跑的代码,今天掏出来跟大伙唠唠

MATLAB环境下一种基于连续小波变换和GoogLeNet的PCG信号分类算法 算法运行环境为MATLAB r2021b&#xff0c;共5种PCG信号&#xff0c;即normal, AR,AS,MR,MS五类 算法可迁移至金融时间序列&#xff0c;地震信号&#xff0c;语音信号&#xff0c;声信号&#xff0c;生理信号&…...

VScode+SFTP插件保姆级配置教程:2025年最新远程同步方案(附常见错误排查)

VScodeSFTP插件2025终极配置指南&#xff1a;从零搭建高效远程开发环境 每次在咖啡厅修改完代码&#xff0c;却发现服务器上的版本还停留在上周&#xff1f;团队协作时总有人忘记同步最新文件&#xff1f;2025年的远程开发早已不是简单的文件传输&#xff0c;而是无缝衔接的云端…...

别再傻傻分不清:Electron-packager和Electron-builder到底怎么选?一份给新手的场景化选择指南

Electron打包工具选型指南&#xff1a;从场景需求看electron-packager与electron-builder的抉择 当你第一次尝试将Electron应用交付给用户时&#xff0c;面对electron-packager和electron-builder这两个主流打包工具&#xff0c;是否感到困惑&#xff1f;它们看似功能相似&…...

2026年国产化人事管理系统TOP10榜单发布:从信创适配到AI提效的选型指南

国产化人事管理系统的竞争&#xff0c;已经从基础人事与算薪&#xff0c;上升到信创环境适配、集团多级管控、复杂用工合规&#xff0c;以及AI在招聘与员工服务中的真实提效。2026年这份TOP10榜单中&#xff0c;红海云更偏向国央企与大型集团的一体化与信创全栈适配&#xff1b…...

快手投放的困局:计划搭建占80%时间,人效去哪了?

25人的代理商团队&#xff0c;10个人专职建计划&#xff0c;每天点鼠标点到手麻。换了种做法后&#xff0c;2个人2小时搞定1000条计划。他们做对了什么&#xff1f; 01 为什么快手投放这么累&#xff1f; 做快手投放的朋友&#xff0c;尤其是服务多个客户的代理商&#xff0c;…...

攻防世界 reverse题GFSJ0810-【crazy】

1.工具&#xff1a;exeinfope、IDA Pro (64-bit)、thonny2.解题&#xff1a;下载附件后&#xff0c;我们先在exeinfope里查壳&#xff0c;如下我们发现是64位无壳文件&#xff0c;然后我们把它放到IDA Pro (64-bit)里分析&#xff0c;我们点击F5先查看伪代码&#xff0c;如下代…...

手把手教你用树莓派+USRP B210搭建一个低成本SDR开发环境(含完整配置流程)

树莓派USRP B210&#xff1a;低成本SDR开发环境搭建全指南 从零开始的SDR硬件选型 在软件定义无线电(SDR)的世界里&#xff0c;设备价格往往成为初学者最大的门槛。专业级设备动辄上万元&#xff0c;而真正适合学习开发的USRP B210配合树莓派的组合&#xff0c;却能以不到五千元…...

第20篇:扩展卡尔曼滤波器实战精讲

本篇前置知识&#xff1a;掌握基础线性代数、了解状态空间方程、会基础Python编程、熟悉标准卡尔曼滤波原理、接触过工控闭环数据采集。 零基础小白也能跟着吃透&#xff0c;全程避开晦涩纯数学推导&#xff0c;所有知识点绑定机器人、自动驾驶、工控实测场景&#xff0c;代码直…...

小说作者必备:次元画室快速构建角色设定,灵感秒变草图

小说作者必备&#xff1a;次元画室快速构建角色设定&#xff0c;灵感秒变草图 你是否经常遇到这样的困境&#xff1a;脑海中浮现出一个鲜活的角色形象&#xff0c;却苦于无法用文字准确描述&#xff1f;或者写好了人物设定&#xff0c;却找不到合适的画师将其可视化&#xff1…...