简单聊聊JavaScript中的事件监听

本篇文章给大家带来了关于javascript的相关知识,其中主要整理了事件监听的相关问题,包括了什么是事件监听、设置事件监听的方法等等内容,下面一起来看一下,希望对大家有帮助。

简单聊聊JavaScript中的事件监听

【相关推荐:javascript视频教程、web前端】

什么是“事件监听”

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表示监听冒泡阶段

注意事项

  • 内部的元素不再区分捕获和冒泡阶段,会先执行写在前面的监听,然后执行后写的监听;
  • 如果给元素设置相同的两个或多个同名事件,则DOM0级写法后面写的会覆盖先写的;而DOM2级会按顺序执行

【相关推荐:javascript视频教程、web前端】

以上就是简单聊聊JavaScript中的事件监听的详细内容,更多请关注其它相关文章!