js之事件系统

事件系统

use 1 n use EventBus Event EventListener

EventListener:以函数形式表示
Event:事件对象数据,对于不同的事件,包含不同的数据

事件阶段

事件处理程序

DOM0方式为:元素.on<事件名> = 函数,调用是在冒泡阶段

DOM2方式为:使用addEventListener添加事件处理函数,有三个参数

  • 事件名,没有前缀on
  • 事件处理程序
  • 在哪个阶段调用触发:false表示在冒泡阶段,true表示在捕获阶段,默认是在冒泡阶段

事件对象

包含下面一些属性
type:表示事件类型,数据类型为字符串
target:表示事件目标
currentTarget:事件处理程序所在的元素
eventPhase:表示事件阶段,1表示捕获阶段,2表示到达目标,3表示冒泡阶段

其支持的事件有

用户界面事件UIEvent


load:表示window页面加载完;frameset中的frame加载完;img图片加载完;object元素加载完
unload:从一页面到另一页面时触发,其支持的情况有

  • window页面完全缷载
  • object上对象缷载完成后

abort:表示在加载过程中用户中止
error:在下面情况时触发

  • window上js报错时
  • img无法加载图片时
  • object上无法加载相应对象
  • frameset上frame无法加载时

select:文本框(input,textArea)中用户选择了字符时
resize:window,frame窗口缩放时
scroll:有滚动条元素时,用户滚动时触发

焦点事件FocusEvent


focus,blur:为不冒泡版的获取焦点,失去焦点事件,是通用版
focusIn, focusOut:为冒泡版的获取焦点,失去焦点事件,是通用版
DOMFocusIn, DOMFocusOut:为特定浏览器支持的获取焦点,失去信息事件,不是通用版的

相关推荐
默_笙42 分钟前
🚲 从写信到打电话:WebSocket 双工通信与跨域方案的"通信进化史"
前端·javascript
ikoala1 小时前
DeepSeek 官方仓库惊现 DeepSeek Harness 桌面端!
前端·javascript·后端
liangshanbo12152 小时前
React useEffect 与 useLayoutEffect 面试题整理
前端·javascript·react.js
ID34610744202 小时前
【课程设计】基于Spring Boot+Vue的校园共享无人机服务系统设计与实现-计算机毕设 附源码44219
javascript·vue.js·spring boot·python·node.js·php·课程设计
夜不会漫长2 小时前
C++:类和对象(2)
java·javascript·c++
BillKu3 小时前
Vue3 可拖拽分栏布局:两种实现方式详解
javascript·vue.js·ecmascript
雪芽蓝域zzs4 小时前
第三十七节:防抖、节流封装(composables 通用函数,搜索框防重复请求)
前端·javascript·vue.js
十年一梦惊觉醒4 小时前
快手视频发布助手,全自动视频发布带货工具
开发语言·前端·javascript
超人气王4 小时前
细说agent心跳机制--agentLoop循环机制中死循环处理,带你进一步了解agent工作底层原理
javascript·人工智能
dsyyyyy11015 小时前
Typescript装饰器
前端·javascript·typescript