百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

HTML DOM 事件 html dom方法

zhezhongyun 2024-12-20 19:45 66 浏览

美女养养眼。

HTML DOM 事件允许 JavaScript 在 HTML 文档中的元素上注册不同的事件处理程序。事件通常与函数结合使用,在事件发生之前函数不会被执行(例如当用户单击按钮时)。后面我们详细介绍JavaScript HTML DOM 事件的用法。今天我们先介绍下HTML DOM事件相关的,我们先看看,事件对象、Event对象、其他事件对象几个概念

  • 事件对象

当 HTML 中发生事件时,该事件属于某个事件对象,例如,按下键盘的某一个键事件属于KeyboardEvent对象,鼠标单击事件属于 MouseEvent 对象,鼠标滚轮滚动事件属于 WheelEvent对象等。

  • Event 对象

所有事件对象均基于 Event 对象,并继承其所有属性和方法。如查看事件类型我们可以用event.type方法来获取事件类型。

Event 对象

描述

Event

所有事件对象的父对象。

  • 其他事件对象

以下是最常见的事件对象:

Event 对象

描述

AnimationEvent

针对 CSS 动画

ClipboardEvent

针对剪贴板的修改

DragEvent

针对拖放交互

FocusEvent

针对与焦点有关的事件

HashChangeEvent

针对 URL 锚点部分的更改

InputEvent

针对用户输入

KeyboardEvent

针对键盘交互

MouseEvent

针对鼠标交互

PageTransitionEvent

针对导航到网页或离开网页

PopStateEvent

针对历史记录条目中的更改

ProgressEvent

针对加载外部资源的进度

StorageEvent

针对窗口的存储区域中的更改

TouchEvent

针对触摸交互

TransitionEvent

针对 CSS 过渡

UiEvent

针对用户界面交互

WheelEvent

针对鼠标滚轮交互


下面这是一些常见事件及其事件类型归属

事件

描述

属于

abort

媒体加载中止时发生该事件。

  • UiEvent
  • Event

afterprint

当页面开始打印时,或者关闭打印对话框时,发生此事件。

Event

animationend

CSS 动画完成时发生此事件。

AnimationEvent

animationiteration

重复 CSS 动画时发生此事件。

AnimationEvent

animationstart

CSS 动画开始时发生此事件。

AnimationEvent

beforeprint

即将打印页面时发生此事件。

Event

beforeunload

在文档即将被卸载之前发生此事件。

  • UiEvent
  • Event

blur

当元素失去焦点时发生此事件。

FocusEvent

canplay

当浏览器可以开始播放媒体时,发生此事件。

Event

canplaythrough

当浏览器可以在不停止缓冲的情况下播放媒体时发生此事件。

Event

change

当form元素的内容、选择的内容或选中的状态发生改变时,发生此事件

Event

click

当用户单击元素时发生此事件。

MouseEvent

contextmenu

当用户右键单击某个元素以打开上下文菜单时,发生此事件。

MouseEvent

copy

当用户复制元素的内容时发生此事件。

ClipboardEvent

cut

当用户剪切元素的内容时发生此事件。

ClipboardEvent

dblclick

当用户双击元素时发生此事件。

MouseEvent

drag

拖动元素时发生此事件。

DragEvent

dragend

当用户完成拖动元素后,发生此事件。

DragEvent

dragenter

当拖动的元素进入放置目标时,发生此事件。

DragEvent

dragleave

当拖动的元素离开放置目标时,发生此事件。

DragEvent

dragover

当拖动的元素位于放置目标之上时,发生此事件。

DragEvent

dragstart

当用户开始拖动元素时发生此事件。

DragEvent

drop

当将拖动的元素放置在放置目标上时,发生此事件。

DragEvent

durationchange

媒体时长改变时发生此事件。

Event

ended

在媒体播放到尽头时发生此事件。

Event

error

当加载外部文件时发生错误后,发生此事件。

  • ProgressEvent
  • UiEvent
  • Event

focus

在元素获得焦点时发生此事件。

FocusEvent

focusin

在元素即将获得焦点时发生此事件。

FocusEvent

focusout

在元素即将失去焦点时发生此事件。

FocusEvent

fullscreenchange

当元素以全屏模式显示时,发生此事件。

Event

fullscreenerror

当元素无法在全屏模式下显示时,发生此事件。

Event

hashchange

当 URL 的锚部分发生改变时,发生此事件。

HashChangeEvent

input

当元素获得用户输入时,发生此事件。

  • InputEvent
  • Event

invalid

当元素无效时,发生此事件。

Event

keydown

当用户正在按下键时,发生此事件。

KeyboardEvent

keypress

当用户按下键时,发生此事件。

KeyboardEvent

keyup

当用户松开键时,发生此事件。

KeyboardEvent

load

在对象已加载时,发生此事件。

  • UiEvent
  • Event

loadeddata

媒体数据加载后,发生此事件。

Event

loadedmetadata

加载元数据(比如尺寸和持续时间)时,发生此事件。

Event

loadstart

当浏览器开始查找指定的媒体时,发生此事件。

ProgressEvent

message

在通过此事件源接收消息时,发生此事件。

Event

mousedown

当用户在元素上按下鼠标按钮时,发生此事件。

MouseEvent

mouseenter

当指针移动到元素上时,发生此事件。

MouseEvent

mouseleave

当指针从元素上移出时,发生此事件。

MouseEvent

mousemove

当指针在元素上方移动时,发生此事件。

MouseEvent

mouseout

当用户将鼠标指针移出元素或其中的子元素时,发生此事件。

MouseEvent

mouseover

当指针移动到元素或其中的子元素上时,发生此事件。

MouseEvent

mouseup

当用户在元素上释放鼠标按钮时,发生此事件。

MouseEvent

mousewheel

不推荐使用。请改用 wheel 事件。

WheelEvent

offline

当浏览器开始脱机工作时,发生此事件。

Event

online

当浏览器开始在线工作时,发生此事件。

Event

open

当打开与事件源的连接时,发生此事件。

Event

pagehide

当用户离开某张网页进行导航时,发生此事件。

PageTransitionEvent

pageshow

在用户导航到某张网页时,发生此事件。

PageTransitionEvent

paste

当用户将一些内容粘贴到元素中时,发生此事件。

ClipboardEvent

pause

当媒体被用户暂停或以编程方式暂停时,发生此事件。

Event

play

当媒体已启动或不再暂停时,发生此事件。

Event

playing

在媒体被暂停或停止以缓冲后播放时,发生此事件。

Event

popstate

窗口的历史记录改变时,发生此事件。

PopStateEvent

progress

当浏览器正处于获得媒体数据的过程中时,发生此事件。

Event

ratechange

媒体播放速度改变时发生此事件。

Event

reset

重置表单时发生此事件。

Event

resize

调整文档视图的大小时发生此事件。

  • UiEvent
  • Event

scroll

滚动元素的滚动条时发生此事件。

  • UiEvent
  • Event

search

当用户在搜索字段中输入内容时,发生此事件。

Event

seeked

当用户完成移动/跳到媒体中的新位置时,发生该事件。

Event

seeking

当用户开始移动/跳到媒体中的新位置时,发生该事件。

Event

select

用户选择文本后(对于<input>和<textarea>)发生此事件

  • UiEvent
  • Event

show

当 <menu> 元素显示为上下文菜单时,发生此事件。

Event

stalled

当浏览器尝试获取媒体数据但数据不可用时,发生此事件。

Event

storage

Web 存储区域更新时发生此事件。

StorageEvent

submit

在提交表单时发生此事件。

Event

suspend

当浏览器有意不获取媒体数据时,发生此事件。

Event

timeupdate

当播放位置更改时发生此事件。

Event

toggle

当用户打开或关闭 <details> 元素时,发生此事件。

Event

touchcancel

在触摸被中断时,发生此事件。

TouchEvent

touchend

当手指从触摸屏上移开时,发生此事件。

TouchEvent

touchmove

当手指在屏幕上拖动时,发生此事件。

TouchEvent

touchstart

当手指放在触摸屏上时,发生此事件。

TouchEvent

transitionend

CSS 转换完成时,发生此事件。

TransitionEvent

unload

页面卸载后(对于 <body>),发生此事件。

  • UiEvent
  • Event

volumechange

当媒体的音量已更改时,发生此事件。

Event

waiting

当媒体已暂停但预期会恢复时,发生此事件。

Event

wheel

当鼠标滚轮在元素向上或向下滚动时,发生此事件。

WheelEvent

上面的内容,我们先介绍到这,后面详细介绍他们的相关用法。

相关推荐

Chinese vice premier calls for multilateralism at Davos

DAVOS,Switzerland,Jan.21(Xinhua)--ChineseVicePremierDingXuexiangdeliveredaspeechatthe...

用C++ Qt手把手打造炫酷汽车仪表盘

一、项目背景与核心价值在车载HMI(人机交互界面)开发领域,虚拟仪表盘是智能座舱的核心组件。本项目基于C++Qt框架实现一个具备专业级效果的时速表模块,涵盖以下技术要点:Qt图形绘制核心机制(QPa...

系列专栏(八):JS的第七种基本类型Symbols

ES6作为新一代JavaScript标准,已正式与广大前端开发者见面。为了让大家对ES6的诸多新特性有更深入的了解,MozillaWeb开发者博客推出了《ES6InDepth》系列文章。CSDN...

MFC界面开发工具BCG v31.1 - 增强功能区、工具箱功能

点击“了解更多”获取工具亲爱的BCGSoft用户,我们非常高兴地宣布BCGControlBarProfessionalforMFC和BCGSuiteforMFCv31.2正式发布!新版本支...

雅居乐上调出售吉隆坡项目保留金,预计亏损扩大至6.64亿元

1月2日,雅居乐集团(03383.HK)发布有关出售一家附属公司股权披露交易的补充公告。此前雅居乐集团曾公告,2023年11月8日(交易时段后),集团子公司AgileRealEstateDeve...

Full text: Address by Vice Premier Ding Xuexiang&#39;s at World Economic Forum Annual Meeting 2025

DAVOS,Switzerland,Jan.21(Xinhua)--ChineseVicePremierDingXuexiangonTuesdaydeliveredasp...

手机性能好不好 GPU玄学曲线告诉你

前言各位在看测试者对手机进行评测时或许会见过“安卓玄学曲线”,所谓中的安卓玄学曲线真名为“ProfileGPURendering”。大多数情况下,在系统“开发者选项中被称为“GPU显示配置文件”或...

小迈科技 X Hologres:高可用的百亿级广告实时数仓建设

通过本文,我们将会介绍小迈科技如何通过Hologres搭建高可用的实时数仓。一、业务介绍小迈科技成立于2015年1月,是一家致力以数字化领先为优势,实现业务高质量自增长的移动互联网科技公司。始...

vue3新特征和所有的属性,方法汇总及其对应源码分析

vue3新特征汇总与源码分析(备注:vue3使用typescript编写)何为应用?constapp=Vue.createApp({})app就是一个应用。应用的配置和应用的API就是app应用...

China&#39;s stability redefines global trade in a volatile era

ContainersareunloadedatQingdaoPort,eastChina'sShandongProvince,December10,2024.[Photo/X...

QML 实现图片帧渐隐渐显轮播

前言所谓图片帧渐隐渐显轮播就是,一组图片列表,当前图片逐渐改变透明度隐藏,同时下一张图片逐渐改变透明度显示,依次循环,达到渐隐渐显的效果,该效果常用于图片展示,相比左右自动切换的轮播方式来说,这种方式...

前端惊魂夜:我竟在CSS里写出了JavaScript?

凌晨两点,写字楼里只剩下我工位上的一盏孤灯。咖啡杯见底,屏幕的光映在疲惫的眼镜片上。为了实现一个极其复杂的动态渐变效果,我翻遍了MDN文档,试遍了所有已知的CSS技巧,却始终差那么一口气。“要是CSS...

10 个派上用场的 Flutter 小部件

尝试学习一门新语言可能会令人恐惧和厌烦。很多时候,我们希望我们知道早先存在的某些功能。在今天的文章中,我将告诉你我希望早点知道的最方便的颤振小部件。SpacerSpacer创建一个可调整的空白空...

让我的 Flutter 代码整洁 10 倍的 5 种

如果你曾在Flutter中使用过SingleTickerProviderStateMixin来制作动画,猜猜怎么着?你已经使用过Mixin了——恭喜你,你已经处于一段你甚至不知道的关...

daisyUI - 主题漂亮、代码纯净!免费开源的 Tailwind CSS 组件库

漂亮有特色的CSS组件库,组件代码非常简洁,也支持深度定制主题、定制组件,可以搭配Vue/React等框架使用。关于daisyUIdaisyUI是一款极为流行的CSSUI组件库,...