什么是“事件监听”

DOM允许我们书写JS代码,来让HTML元素对事件作出反应

事件:用户与网页的交互动作;eg:点击网页;

监听:是为了让计算机随时能够发现这个事件发生了,从而执行程序员预先编写的一些程序;

设置事件监听的方法主要有onxxx和addEventListener()两种

最简单的设置事件监听的方法

设置它们的onxxx属性

oBox.onclick = function () {
    // 点击盒子时,将执行这里的语句
}

常见的鼠标事件监听

事件名 事件描述
onclick 当鼠标单机某个对象
ondblclick 当鼠标双击某个对象
onmousedown 当某个鼠标按键在某个对象上被按下
onmouseup 当某个鼠标按键在某个对象上被松开
onmousemove 当某个鼠标按键在某个对象上被移动
onmouseenter 当鼠标进入某个对象(相似事件onmouseover)
onmouseleave 当鼠标离开某个对象(相似事件onmouseout)

常见的键盘事件监听

事件名 事件描述
onkeypress 当某个键盘的键被按下(系统按钮,如箭头键和功能键无法得到识别)
onkeydown 当某个键盘的键被按下(系统按钮可以识别,并且会先于onkeypress发生)
onkeyup 当某个键盘的键被松开

常见的表单事件监听

事件名 事件描述

onchange

当用户改变某个表单域的内容时,会触发
onfocus 当某元素获得焦点(比如tab键或鼠标点击)
onblur 当某元素失去焦点
onsubmit 当表单被提交
onreset 当表单被重置

常见的页面事件监听

事件名 事件描述
onload 当页面或图像被完成加载
onunload 当用户退出页面

事件的传播

先从外到内(捕获阶段),然后再从内到外(冒泡阶段)

而,onxxx这样的写法(DOM0级),只能监听冒泡阶段;所以需要用到addEventListener()方法(DOM2级);

oBox1.addEventListener('click', function(){
    // 这是事件处理函数
}, true)  // true表示监听捕获阶段,false表示监听冒泡阶段

注意事项

发表回复