JavaScript 常用DOM事件类型 (javascript红皮书二刷 - Ch13.4 事件类型)

UI 交互事件

load 加载

通过 onload 属性或者 load 事件, 当页面完全加载完毕后触发。

  • 后来加入的 img 可以利用这个来异步加载

unload 卸载

使用 unload 来卸载 load 事件程序。

  • 卸载事件避免 内存泄漏
  • 注意事件触发时许多 DOM 已经不存在, 无法操作不存在的 DOM

resize 大小改变

DOM 的大小发生改变时触发。

  • 注意最大化最小化也会触发这个事件
  • 避免使用复杂函数导致计算量过高

scroll 滚动

事件在 window 对象上产生, 但是实际表示的则是页面中相应元素的变化, 如下代码可以显示滚动时的垂直顶部距离:

addEventListener(window, "scroll", function(){
	console.log(document.scrollTop)
})

焦点事件

blur 失去焦点

当元素 失去焦点 时触发, 事件不会进行冒泡(即不会向上进行事件传递导致每个元素都执行一遍 blur 的事件效果)

focus 获得焦点

当元素 获得焦点 时触发, 事件同样不会进行冒泡。

鼠标和滚轮

click / dblclick 单双击事件

当用户进行 鼠标单击 / 双击 时触发, 需要注意的是, 按下 回车键 也可以触发。

mousedown / mouseup 按下释放事件

当用户 按下 / 松开 鼠标任意按键时触发, 不能通过 按键 触发。

mouseenter / mouseleave 进入离开事件

当鼠标 进入 / 离开 元素范围时触发。

mousemove 鼠标移动事件

当鼠标在元素范围内 移动 时即可触发。

针对鼠标事件的信息

  • event.clientXevent.clientY 可以显示事件的 客户端 (浏览器)坐标信息
  • event.pageXevent.pageY 可以显示 页面 的坐标信息, 当页面没有滚动时和 👆 的信息相等
  • event.screenXevent.screenY 可以显示用户 屏幕 的坐标信息
  • event.shiftKey / ctrlKey / altKey / metaKey 可以获取是否按下了 修饰键
  • event.button 可以显示按下的鼠标键, 1为主鼠标, 2为副鼠标, 4为中键

键盘和文本事件

keydown / keyup 按下弹起

通过 event.keyCode 可以获取触发的按键码。

keypress 按键事件

也可以通过 event.key 直接通过字符串判断按键。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值