JavaScript的事件监听你了解吗
作者:CSPsy
这篇文章主要为大家详细介绍了JavaScript的事件监听,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
1. 什么是事件监听 ?
事件监听就是计算机对事件进行监听,知道什么时候发生了这个事件,从而执行一些写好的程序。
那么,它的常用方法有哪些呢 ?让我们一起来看看吧 !
2. DOM0 级事件监听
DOM0 级事件监听:
给元素设置它们的onxxx
属性(e.g., onclick)
对于 DOM0 级事件监听 ,它只能监听冒泡阶段
2.1) 常见的页面事件监听
事件名 | 事件描述 |
---|---|
onload | 当页面或图像被完成加载 |
onunload | 当用户退出页面 |
2.2) 常见的鼠标事件监听
事件名 | 事件描述 |
---|---|
onclick | 当鼠标单击某个元素 |
ondblclick | 当鼠标双击某个元素 |
onmousedown | 当鼠标按键在某个元素上按下 |
onmouseup | 当鼠标按键在某个元素上松开 |
onmousemove | 当鼠标按键在某个元素上移动 |
onmouseenter | 当鼠标移动到某个元素上 (进入到某个元素区域时) |
onmouseleave | 当鼠标离开某个元素 |
其中onmouseenter
与onmouseover
类似,onmouseleave
与onmouseout
类似;
它们两者的区别:onmouseenter
与onmouseleave
事件不支持冒泡,另外两个支持事件冒泡;
所以,onmouseenter
与onmouseleave
搭配使用,onmouseover
与onmouseout
搭配使用
2.3) 常见的键盘事件监听
事件名 | 事件描述 |
---|---|
onkeypress | 当键盘上的某个按键被按下 (系统按键无法识别 e.g.,F1 这类的按键) |
onkeydown | 当键盘上的某个按键被按下 (系统按键可以识别,并且先于 onkeypress 发生) |
onkeyup | 当键盘上的某个按键被松开 |
2.4) 常见的表单事件监听
事件名 | 事件描述 |
---|---|
oninput | 当用于正在修改表单域的内容 |
onchange | 当用户改变了表单域的内容 |
onfocus | 当元素获得焦点 (e.g., tab 键或鼠标点击) |
onblur | 当元素失去焦点 |
onsubmit | 当表单被提交 |
onreset | 当表单被重置 |
3. DOM2 级事件监听
DOM2 级事件监听:
EventTarget.addEventListener()
方法将指定的监听器注册到EventTarget
上,当该对象触发指定的事件时,指定的回调函数就会被执行。
它有着几种写法,想了解别的写法可以看看 MDN 官方文档,这里介绍的写法如下:
type
:表示监听事件类型的字符串listener
:事件监听函数useCapture
:当写true
时,进行的是事件捕获阶段,默认为false
,事件冒泡阶段
EventTarget.addEventListener(type, listener, useCapture);
对于常用的type
:即把常用的 DOM0 级的onxxx
的on
去掉后就可以了,即原来的事件名。
例如:
target.addEventListener('click', () => { console.log("我被点击了"); }); // 这里第三个参数没写,默认监听冒泡阶段,如果要监听捕获阶段,写上 true
总结
本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注脚本之家的更多内容!