1. 程式人生 > >Dom事件鍵盤事件

Dom事件鍵盤事件

12.4

DOM0級事件元素繫結多個click最後只執行最後一個click

DOM2級事件元素繫結多個click,都要執行

注意當繫結的多個事件名,函式名,事件發生階段三者完全一樣時,才執行最後一個

div.addEventListener("click",fn1,false)

div.addEventListener("click",fn1,false)

第二引數儘量不要使用匿名函式

區別

  1. dom0級繫結多個相同的事件,後者會覆蓋前者,dom2級不會
  2. Dom0只適合普通事件,Dom2級還有指定的事件型別如DOMContentLoaded(html文件結構載入完成之後執行
    )這個事件就是jquery中的$(document).ready()

Window.onload$(document).ready()的區別

2.事件取消 DOM0級直接賦值nullDOM2級需要使用removeEventListener()

div.onclick=function(){

console.log(123)

}

div.onclick=null;  DOM0級取消事件

div.addEventListener("click",fn1,false)

function fn1(){

console.log(123)

}

div.removeEventListener("click",fn1,false) DOM2級取消事件

鍵盤事件

鍵盤事件 

onkeydown  onkeyup

鍵盤事件觸發時,瀏覽器天生給方法一個叫KeyboardEvent的物件,所有鍵盤的資訊都在這個物件上。

我們發現ev有個屬性keyCode 鍵盤編碼

document.onkeydown=function(ev){

var ev=ev||window.event

console.log(ev.keyCode)

}

右擊滑鼠事件  oncontextmenu  滑鼠右擊事件