js高级的2

时间:2023-03-08 17:30:33
js高级的2

BOM0级事件元素绑定多个click最后只执行最后一个click。

DOM2级事件元素绑定多个click,都要执行

  注意当绑定的多个事件名,函数名,事件发生阶段三者完全一样时,才执行最后一个

div.addEventListener(“click”,fn1,false)

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

第二参数尽量不要使用匿名函数

区别

1.      dom0级绑定多个相同的事件,后者会覆盖前者,dom2级不会

2.       dom0只适合普通事件,dom2级还会指定的事件类型如DOMContentLodaed(当html文档结构加载完成之后执行)这个事件就是jquery中的$(document).ready()

  Window.onload和$(document).ready的区别

  2.事件取消  dom0级事件赋值null,dom2级需要使用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 鼠标右击事件