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