事件高级。

一、注册事件(绑定事件)

就是给元素添加事件

注册事件有两种方式:传统方式和方法监听注册方式

1

     传统注册方式

     方法监听注册事件

2、 addEventListener  事件监听方式

里面的事件类型是字符串,必定加引号,而且不带on

3、attachEvent 事件监听方式

4、注册事件兼容性解决方案

二、删除事件(解绑事件)

1、传统注册方式

eventTarget.οnclick= null;

2、方法监听注册事件

3、删除事件兼容性解决方案

三、DOM事件流

事件流描述的是从页面中接受事件的顺序。

事件发生时会在元素节点之间按照特定的顺序传播,这个传播过程即DOM事件流。

DOM事件流分三个阶段:

1、捕获阶段

2、当前目标阶段

3、冒泡阶段

事件冒泡:IE最早提出,事件开始时由最具体的元素接收,然后逐级向上传播到dom最顶层节点的过程。

实际开发中我们很少使用事件捕获,我们更关注事件冒泡。

有些事件是没有冒泡的,比如:onblur、onfocus、onmouseenter、onmouseleave

四、事件对象

1、什么是事件对象

2、事件对象的使用语法

3、事件对象的兼容性方案

解决:e=e||window.event;

4、事件对象的常见属性和方法

this 返回的是绑定事件的对象(元素)

区别: e.target 点击了那个元素就返回那个元素  ;this 那个元素绑定这个点击事件,那么就返回谁

阻止默认行为事件 让链接不跳转  或者让提交按钮不提交

五、阻止事件冒泡

1、标准写法:利用事件对象里面的 stopPropagation()方法

2、阻止事件冒泡的兼容性解决方案

六、事件委托(代理、委派)

事件委托的原理:不是每个子节点单独设置时间监听器,而是事件监听器设置在其父节点上,然后利用冒泡原理影响设置每个子节点

七、常用的鼠标事件

1、禁止鼠标右键菜单

contextmenu 主要控制应该合时显示上下文菜单,主要用于程序员取消默认的上下文菜单

2、禁止鼠标选中(selectstart 开始选中)

3、鼠标事件对象

event 对象代表事件的状态,跟事件相关的一系列信息的集合。新阶段我们是用鼠标事件对象 MouseEvent   和 键盘事件对象  KeyboardEvent 

跟随鼠标的天使案例

鼠标移动事件:mousemove

八、常用的键盘事件

时间除了使用鼠标触发,还可以使用键盘触发

注意;

1、如果使用addEventListener 不需要加on

2、onKeypress 和前面两个区别是,他不识别功能键,比如左右箭头,shift等

3、三个事件的执行顺序是:keydown--keypress--keyup

2、键盘事件对象

注意:onkeydown 和 onkeyup 不区分字母大小写,onkeypress 区分字母大小写

在实际开发中,我们更多使用keydown和keyup,他能识别所有键

keypress 不识别功能键,但keyCode属性能区分大小写,返回不同的ASCLL值

        模拟京东按键输入内容

        

        模拟京东快递单号查询

注意:keydown 和keypress 在文本框里面的特点:他们两个触发时,文字还没有落入文本框中

keyup事件触发的时候,文字已经落入文本框中。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/617468.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【busybox记录】【shell指令】ls

目录 内容来源: 【GUN】【ls】指令介绍 【busybox】【ls】指令介绍 【linux】【ls】指令介绍 使用示例-默认输出: 列出目录内容 - 默认输出 列出目录内容 - 不忽略以.开头的文件 列出目录内容 - 不忽略以.开头的文件,只忽略.和..文件…

机器学习笔记导航(吴恩达版)

01.机器学习笔记01:机器学习前置概念导入、线性回归、梯度下降算法 02.机器学习笔记02:多元线性回归、多元梯度下降算法、特征缩放、均值归一化、正规方程 03.机器学习笔记03:octave安装、创建矩阵 04.机器学习笔记04:octave中移动…

量化之王西蒙斯:那些投资“神迹”和难言的“身后事”

投资大师总是相偕而来,又相伴而去。 美国当地时间2024年5月10日,量化投资大师西蒙斯(James Harris Simons)骤然去世,享年86岁。 此时距离芒格离世不到半年。 西蒙斯拥有数学家、投资家、慈善家、量化行业开拓者、密…

17_基于Flash和RAM的的文件系统选择

嵌入式系统常见文件系统 本文主要讲述在嵌入式系统中,常见的基于flash和内存(RAM)的文件系统类型,具体选择要结合实际需求灵活选配。 一、基于 Flash 的文件系统 基于 Flash 的文件系统主要包括 JFFS2、 YAFFS、 Cramfs 和 Romfs 等,各种文件系统具有不同的特点,本文将分…

UBoat:一款功能强大的HTTP Botnet学习与研究工具

关于UBoat UBoat是一款功能强大的HTTP Botnet概念验证工具,该工具支持复刻一个现实场景中完整功能的Botnet测试环境,广大研究人员可以利用UBoat深入学习和研究Botnet的工作机制,以此来提升安全检测和保护策略。 功能介绍 1、基于C开发&…

halcon学习之一维测量基础

目录 创建测量矩形,获取测量句柄 gen_measure_rectangle2() 使用句柄进行测量 measure_pos() 修改参数Threshold 修改参数Transition 修改参数select 参数RowEdge,ColumnEdge,Distance …

Lab4: traps

RISC-V assembly Which registers contain arguments to functions? For example, which register holds 13 in mains call to printf? 根据RISC-V函数调用规范,函数的前8个参数使用a0-a7寄存器传递。 当main函数调用printf函数时,a2寄存器保存13 …

7.STL_string1.0(详细)

目录 1. 什么是STL 2. STL的版本 3. STL的六大组件 1. 为什么学习string类? 1.1 C语言中的字符串 2. 标准库中的string类 2.1 string类(了解) 2.2 string类的常用接口说明 1. string类对象的常见构造 2. string类对象的容量操作 reserve 3. string类对象…

C++入门必读-Qt的安装与配置

QT简介 Qt是一个跨平台的C图形用户界面应用程序框架。它为应用程序开发者提供建立图形界面所需的所有功能。它是完全面向对象的,很容易扩展,并且允许真正的组件编程。 QT下载 访问下载网站: Index of /archive/qt 安装编译器 QT安装 建议安装之前将网络断…

【回溯 字典树(前缀树)】212. 单词搜索 II

本文涉及知识点 回溯 字典树(前缀树) LeetCode212. 单词搜索 II 给定一个 m x n 二维字符网格 board 和一个单词(字符串)列表 words, 返回所有二维网格上的单词 。 单词必须按照字母顺序,通过 相邻的单元…

Android studio 打开Device Mirroring方便调试

巧合下发现一个很好用的工具,在平时调试真机的时候在每次run app后都要低头找找手机看看效果。但是,用了AS上的Device Mirroring,你会发现根本不需要再低头点手机,调试方便一万倍啊。 话不多说,上图。直接就可以在电脑…

【初级数据结构】队列

目录 前言队列的概念及结构队列的实现队列的结构队列的初始化队列的销毁入队出队取队头元素取队尾元素判断队列是否为空取出队列中元素个数代码测试 完整代码Queue.hQueue.ctest.c 前言 前面我们已经学习了栈,栈是一种后进先出的结构,即LIFO,…

从JSON数据到Pandas DataFrame:如何解析出所需字段

目录 一、引言 二、JSON数据的基本结构 三、使用Pandas从JSON数据中读取数据 四、从DataFrame中解析出所需字段 解析对象字段 解析嵌套对象字段 解析数组字段 五、案例与代码示例 六、总结 一、引言 在数据分析和处理的日常工作中,我们经常需要从各种…

【Qt 学习笔记】Qt常用控件 | 多元素控件 | Table Widget的说明及介绍

博客主页:Duck Bro 博客主页系列专栏:Qt 专栏关注博主,后期持续更新系列文章如果有错误感谢请大家批评指出,及时修改感谢大家点赞👍收藏⭐评论✍ Qt常用控件 | 多元素控件 | Table Widget的说明及介绍 文章编号&#…

【JS红宝书学习笔记】第3章 语言基础

第3章 语言基础 1. 语法 标识符(变量、函数、属性或函数参数的名称):一般使用驼峰法命名,关键字、保留字、true、false 和 null 不能作为标识符。 标识符的第一个字符必须是一个字母、下划线(_)或美元符号…

乡村振兴与数字乡村建设:加强农村信息化建设,推动数字乡村发展,提升乡村治理和服务水平,构建智慧化的美丽乡村

目录 一、引言 二、数字乡村建设的必要性 1、推动农村经济转型升级 2、提升乡村治理水平 3、改善乡村民生福祉 三、数字乡村建设的现状与挑战 1、现状 2、挑战 四、数字乡村建设的未来发展路径 1、加强农村信息化基础设施建设 2、提升农民信息素养和技能水平 3、制…

软件设计师笔记和错题

笔记截图 数据库 模式是概念模式 模式/内模式 存在概念级和内部级之间,实现了概念模式和内模式的互相转换 外模式/模式映像 存在外部级和概念级之间,实现了外模式和概念模式的互相转换。 数据的物理独立性, 概念模式和内模式之间的映像…

JAVA抽象类,接口与内部类,常用API知识总结

文章目录 抽象类和抽象方法抽象类的定义格式抽象方法的定义格式注意事项 接口定义和使用成员特点和类之间的关系新增JDK8新增方法JDK9新增方法 总结设计模式 内部类使用场景分类成员内部类获取内部类对象访问成员变量 静态内部类局部内部类匿名内部类格式使用场景 示例 常用API…

QT C++(QWidget类及其常见的属性)

文章目录 1. QWidget类及其常见的属性 1. QWidget类及其常见的属性 QT各种控件都是继承自QWidget类,QWidget类是QT控件体系中通用的部分。 QWidget属性如下图 常见的QT属性为: enabled:描述控件是否处于可用状态(禁用状态这个…

民航电子数据库:select查询时部分字段缺失

目录 前言异常排查原因解决使用systemPath标签引入本地Jar包后无法打包 前言 1、对接民航电子数据库 2、框架为shardingsphere caedb mybatis 3、部分SQL查询时,会出现字段缺失的情况 4、查看日志打印出来的SQL,字段并未缺失 异常 这里省略SQL语句…