事件

事件捕获–由父节点向子节点捕获
事件冒泡–由子节点向父节点冒泡
先捕获后冒泡(中间还有一个处于目标阶段)

<html>
<body>
	<div></div>
</body>
</html>

除上述代码外 还有document
捕获顺序:document --> <html> --> <body> 停止(处于目标<div>阶段)
冒泡顺序:<div> --> <body> --> <html> --> document

DOM0级事件处理程序
如onclick
修改:将属性值设置为一个函数

var btn = document.gertElementById("myBtn");
btn.onclick = function(){
	alert(this.id)
}

删除:属性值设置为null

btn.onclick = null

DOM2级事件处理程序
两个方法:
addEventListener(要处理的事件名,处理函数,布尔值)
removeEventListener(要处理的事件名,处理函数,布尔值)

布尔值为true则表示捕获阶段调用,布尔值为false则表示捕获阶段调用
另注意:处理的事件名不加on
移除时大致相同,但移除时不可移除匿名的处理函数 要移除函数名

由于浏览器等问题,自己可手写跨浏览器事件处理程序

var EventUtil={
   addHandler:function(element,type,handler){ //添加事件
      if(element.addEventListener){
         element.addEventListener(type,handler,false);  //使用DOM2级方法添加事件
      }else if(element.attachEvent){                    //使用IE方法添加事件
         element.attachEvent("on"+type,handler);
      }else{
         element["on"+type]=handler;          //使用DOM0级方法添加事件
      }
   }

需要注意的时DOM0级对每个事件只支持一个事件处理程序

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值