zoukankan      html  css  js  c++  java
  • Javascript Event事件中IE与标准DOM的区别

    1.事件流的区别
    <body>
    <div>
    <button>点击这里</button>
    </div>
    </body> 
    IE采用冒泡型事件 Netscape使用捕获型事件 DOM使用先捕获后冒泡型事件 

    冒泡型事件模型: button->div->body (IE事件流)

    捕获型事件模型: body->div->button (Netscape事件流)

    DOM事件模型: body->div->button->button->div->body (先捕获后冒泡) 

    2.事件侦听函数的区别

    IE使用:
    [Object].attachEvent("name_of_event_handler", fnHandler); //绑定函数
    [Object].detachEvent("name_of_event_handler", fnHandler); //移除绑定

    DOM使用:
    [Object].addEventListener("name_of_event", fnHandler, bCapture); //绑定函数
    [Object].removeEventListener("name_of_event", fnHandler, bCapture); //移除绑定

    bCapture参数用于设置事件绑定的阶段,true为捕获阶段,false为冒泡阶段。 

    3.事件对象定位(获取)

    IE:事件对象是window对象的一个属性event,event只能在事件发生时访问,事件处理函数执行完毕,事件对象被销毁。 

    DOM:event对象必须作为唯一的参数传递给事件处理函数,且必须为第一个参数。

    4.获取目标(target)
    IE:var oTarget=event.srcElement;
    DOM:var oTarget=event.target;

    5.阻止事件默认行为

    IE:event.returnValue=false;
    DOM:event.preventDefault(); 

    6.停止事件复制(冒泡)
    IE:event.cancelBubble=true;
    DOM:event.stopPropagation(); 

  • 相关阅读:
    NW.js开发环境的搭建
    EXPORTS与MODULE.EXPORTS的区别
    搭建 webpack + React 开发环境
    require,import区别?
    数据库中图片的二进制存储和显示
    二进制图片存储问题
    单线程(Thread)与多线程的区别
    软件测试心得--悲催我
    2015年-年度总结
    人生当中第一次转正
  • 原文地址:https://www.cnblogs.com/wu-web/p/6805561.html
Copyright © 2011-2022 走看看