事件

1、事件流——从页面中接收事件的顺序
IE——事件冒泡流
NetScape——事件捕获流
事件冒泡——事件最开始由最具体的元素(文档中嵌套最深的那个节点)接收,然后逐级向上传播至最不具体的节点(文档)。
事件捕获——不太具体的节点应该更早地接收事件,具体的节点最后接收到事件。

2、事件处理程序
HTML事件处理程序——直接在HTML代码中添加事件处理程序,如:

<input id="btn1" value="按钮" type="button" onclick="showmsg();">
  <script>
      function showmsg(){
          alert("HTML添加事件处理");
      }
  </script>

DOM0级事件处理程序——指定对象添加事件处理,如:

<input id="btn2" value="按钮" type="button">
  <script>
    var btn2= document.getElementById("btn2");
      btn2.onclick=function(){
      alert("DOM0级添加事件处理");
    } 
    btn.onclick=null;//如果想要删除btn2的点击事件,将其置为null即可
  </script> 

DOM2级事件处理程序——addEventListener()和 removeEventListener(),它们都接收三个参数:要处理的事件名、作为事件处理程序的函数和一个布尔值(是否在捕获阶段处理事件),如:

<input id="btn3" value="按钮" type="button">
  <script>
     var btn3=document.getElementById("btn3");
     btn3.addEventListener("click",showmsg,false);//这里我们把最后一个值置为false,即不在捕获阶段处理,一般来说冒泡处理在各浏览器中兼容性较好
     function showmsg(){
         alert("DOM2级添加事件处理程序");
     }
     btn3.removeEventListener("click",showmsg,false);//如果想要把这个事件删除,只需要传入同样的参数即可
  </script>

3、IE事件处理程序
attachEvent()——添加事件
detachEvent()——删除事件
接收相同的参数:要处理的事件名、作为事件处理程序的函数

var btn=document.getElementById("mybtn"); 
var hander=function(){ 
alert("clicked"); 
} 
btn.attachEvent("onclick",hander);
btn.detachEvent("onclick",hander); 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值