你的位置:首页 > 网页设计

[网页设计]IE事件模型,如何给IE和非IE浏览器添加事件


<!DOCTYPE html><html>  <head>    <meta charset="utf-8"/>    <title>IE事件模型</title>  </head>  <body>    <input type="button" value="Event对象"/>    <p>事件传播过程:</p>    <script>      window.onload=function(){        var btn=document.getElementsByTagName("input")[0];        var p=document.getElementsByTagName("p")[0];        var i=1;        do{          if(btn.addEventListener)          {            btn.addEventListener("click",function(){              p.innerHTML+="<br/>("+ i++ +") "+this.nodeName;            },false);          }          else          {            btn.attachEvent("onclick",(function(btn){              return function(){    //返回闭包函数,从而动态锁定响应事件的当前对象                p.innerHTML+="<br/>("+ i++ +") "+btn.nodeName;              }            })(btn));            //直接调用函数,以便向内部传递当前绑定元素对象          }          btn=btn.parentNode;        }while(btn);      }    </script>  </body></html>

 

IE事件模型

事件传播过程: