
JavaScript事件汇总
事件冒泡:事件可能会向上或向下冒泡,需根据具体情况处理。 事件对象:事件对象可以通过 跨浏览器兼容:在编写事件处理函数时,需考虑不同浏览器的差异,尽量使用统一的事件处理方式。
发布日期:2021-05-07 10:55:47
浏览次数:12
分类:精选文章
本文共 1960 字,大约阅读时间需要 6 分钟。
JS事件汇总整理
1. 键盘事件
键盘事件是跟踪用户键盘输入的重要工具,常见的键盘事件有以下几个:
常用键盘事件
onkeyup
:某个键盘按键被松开时触发onkeydown
:某个键盘按键按下时触发onkeypress
:某个键盘按键按下时触发,但不识别功能键(如Ctrl、Shift、箭头键等)
键盘事件对象
键盘事件对象提供了一些有用的属性:
keyCode
:返回按下键的ASCII码值keyChar
:返回按下键对应的字符(非功能键时)ctrlKey
:判断是否按下Ctrl键shiftKey
:判断是否按下Shift键altKey
:判断是否按下Alt键
通过keyCode判断键盘输入
document.addEventListener('keyup', function(e) { console.log('键盘松开:' + e.keyCode);});document.addEventListener('keydown', function(e) { console.log('键盘按下:' + e.keyCode);});document.addEventListener('keypress', function(e) { console.log('键盘按下(不含功能键):' + e.keyChar);});
2. 鼠标事件
鼠标事件是跟踪用户鼠标操作的重要工具,常见的鼠标事件有以下几个:
鼠标事件类型
click
:鼠标左键单击时触发(右键或中间鼠标按钮不会触发)dblclick
:鼠标左键双击时触发mousedown
:鼠标任意按钮按下时触发mouseup
:鼠标任意按钮松开时触发mousemove
:鼠标在某个元素上移动时持续触发mouseover
:鼠标指针悬停在某个元素上时触发mouseout
:鼠标指针从某个元素上移出时触发
鼠标事件对象
鼠标事件对象提供了丰富的属性来获取鼠标的位置和状态:
clientX
:以浏览器窗口左上角为原点的x坐标clientY
:以浏览器窗口左上角为原点的y坐标offsetX
:以事件目标左上角为原点的x坐标offsetY
:以事件目标左上角为原点的y坐标pageX
:以页面左上角为原点的x坐标pageY
:以页面左上角为原点的y坐标screenX
:以屏幕左上角为原点的x坐标screenY
:以屏幕左上角为原点的y坐标layerX
:以绝对定位元素的左上角为原点的x坐标layerY
:以绝对定位元素的左上角为原点的y坐标
鼠标位置获取
var posX = 0, posY = 0;var event = event || window.event;if (event.pageX || event.pageY) { posX = event.pageX; posY = event.pageY;} else if (event.clientX || event.clientY) { posX = event.clientX + document.documentElement.scrollLeft + document.body.scrollLeft; posY = event.clientY + document.documentElement.scrollTop + document.body.scrollTop;}
鼠标事件的执行顺序
鼠标事件的执行顺序通常遵循以下规律:
mousedown
→mouseup
→click
→dblclick
3. HTML事件
HTML事件是跟踪用户与HTML元素交互的重要工具,常见的HTML事件有以下几个:
常见HTML事件
load
:文档或图片加载完成时触发unload
:文档或图片卸载时触发select
:文本被选中时触发change
:内容被修改时触发focus
:元素获得焦点时触发blur
:元素失去焦点时触发scroll
:滚动带滚动条的元素时触发submit
:表单提交时触发reset
:重置按钮被点击时触发
示例代码
window.onload = function() { var d = document.getElementById('d'); d.onchange = function() { alert('内容发生了变化'); };};
注意事项
event.target
获取当前触发事件的元素。发表评论
最新留言
做的很好,不错不错
[***.243.131.199]2025年03月25日 12时23分04秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Dijkstra算法的总结
2019-03-04
Vue实现选项卡功能
2019-03-04
vue中接收后台的图片验证码并显示
2019-03-04
趣谈win10常用快捷键
2019-03-04
王爽 《汇编语言》 读书笔记 三 寄存器(内存访问)
2019-03-04
JDK 内置的多线程协作工具类的使用场景
2019-03-05
Java 中哪些对象可以获取类对象
2019-03-05
11.2.6 时间值的小数秒
2019-03-05
Redis源码分析(七)--- zipmap压缩图
2019-03-05
自定义Hive Sql Job分析工具
2019-03-05
【MySQL】(九)触发器
2019-03-05
Oracle 11G环境配置
2019-03-05
【Python】(十二)IO 文件处理
2019-03-05
【Oozie】(三)Oozie 使用实战教学,带你快速上手!
2019-03-05
师兄面试遇到这条 SQL 数据分析题,差点含泪而归!
2019-03-05
C语言的数值溢出问题(上)
2019-03-05
8051单片机(STC89C52)以定时器中断模式实现两倒计时器异步计时
2019-03-05
用 wxPython 打印你的 App
2019-03-05