JavaScript事件处理

在IE 3.0和Netscape 2.0浏览器中开始出现事件。DOM 2规范开始标准化DOM事件,直到2004年发布DOM 3.0时,W3C才完善事件模型。目前,所有主流浏览器都支持DOM 2事件模块。IE8及其早期版本还继续使用IE事件模块。

1、事件基础

1.1、事件模型

在浏览器发展历史中,出现以下4种事件处理模型:

  • 基本事件模型:也称为DOM 0事件模型。它是浏览器初期出现的一种比较简单的事件模型,主要通过HTML事件属性,为指定标签绑定事件处理函数。由于这种模型应用比较广泛,获得了所有浏览器的支持,目前依然比较流行。但是这种模型对于HTML文档标签依赖严重,不利于JavaScript独立开发。
  • DOM事件模型:由W3C制定,是目前标准的事件处理模型。除了IE怪异模式不支持外,符合标准的浏览器都支持该模型。DOM事件模型包括DOM 2事件模块和DOM 3事件模块,DOM 3事件模块为DOM 2事件模块的升级版,较DOM 2事件模块略有完善,主要是新增加一些事情类型,以适应移动设备的开发需要,但大部分规范和用法保持一致。
  • IE事件模型:IE 4.0及其以上版本浏览器支持,与DOM事件模型相似,但用法不同。
  • Netscape事件模型:由Netscape 4浏览器实现,在Netscape 6中停止支持。

1.2、事件流

事件流就是多个节点对象对同一个事件进行响应的先后顺序,主要包括以下3种类型:

相关推荐
Appreciate(欣赏)12 分钟前
JAVA使用poi类读取xlxs文件内容拼接成添加数据SQL
java·开发语言·sql
Dorcas_FE34 分钟前
【tips】动态el-form-item中校验的注意点
前端·javascript·vue.js
八月ouc38 分钟前
解密JavaScript模块化演进:从IIFE到ES Module,深入理解现代前端工程化基石
javascript·es6·模块化·cmd·commonjs·amd·iife
oioihoii39 分钟前
性能提升11.4%!C++ Vector的reserve()方法让我大吃一惊
开发语言·c++
毕设源码-朱学姐40 分钟前
【开题答辩全过程】以 基于JAVA的恒星酒店客房管理系统为例,包含答辩的问题和答案
java·开发语言
四岁爱上了她43 分钟前
input输入框焦点的获取和隐藏div,一个自定义的下拉选择
前端·javascript·vue.js
思密吗喽43 分钟前
景区行李寄存管理系统
java·开发语言·spring boot·毕业设计·课程设计
Rust语言中文社区1 小时前
【Rust日报】Dioxus 用起来有趣吗?
开发语言·后端·rust
小灰灰搞电子1 小时前
Rust Slint实现颜色选择器源码分享
开发语言·后端·rust
烟袅1 小时前
5 分钟把 Coze 智能体嵌入网页:原生 JS + Vite 极简方案
前端·javascript·llm