首页 > 代码库 > 【javascript 高级程序设计笔记——第九章:事件】

【javascript 高级程序设计笔记——第九章:事件】

第 9 章:事件

一、事件类型

  • IE:冒泡、至 document
  • Netscape:捕获、从 document 开始
  • Mozilla:冒泡 + 捕获。至 window
  • DOM:冒泡 + 捕获。 大部分兼容标准的浏览器至 window

二、监听函数

  • IE

    • 每个元素和 window 对象有两个方法:

      [object].attachEvent(‘onclick‘, fnHandler); [object].detachEvent(‘onclick‘, fnHandler);

  • DOM
    • 语法 [object].addEventListener(‘click‘, fnHandler, false); [object].removeEventListener(‘click‘, fnHandler, false);
    • 加载和解除,对于冒泡和捕获必须一一对应

三、事件对象

  • IE
    • 是 window 的一个属性:window.event
  • DOM
    • 传参

四、事件对象的对比

  • 阻止事件的默认行为
    • IE event.returnValue = http://www.mamicode.com/false;
    • DOM ev.preventDefault();
  • 阻止事件冒泡
    • IE event.cancelBubble = true;
    • mozilla ev.stopPropagation();
  • 鼠标事件
    • 源节点
      • IE:event.srcElement
      • DOM:ev.target
    • mouseover 和 mouseout 事件属性
      • IE: fromElement、 toElement
        • mouseover:toElement = srcElement
        • mouseout: fromElement = srcElement
      • DOM: ev.relatedTarget
        • mouseover: 来自何处
        • mouseout: 去往何方

【javascript 高级程序设计笔记——第九章:事件】