zoukankan      html  css  js  c++  java
  • 201510091346_《JavaScript的事件模型——createEvent、initEvent、dispatchEvent》

    1. 存在三种事件模型:原始事件模型(所有浏览器都支持)、dom2(除ie外的浏览器都支持)事件模型、IE事件模型、Netscape事件模型。

    -----------------------------------------------------------------------------------------------------------------------------------------------

    2.详细模型

    (1)原始事件模型

        分为:语义事件onclick和输入事件onsubmit

    -------------------------------------------------------------------------

    (2)dom2事件模型

     一般分为三步:1)先由document向目标对象传播称之为:捕捉阶段;2)目标对象的事件处理程序运行,3)从目标对象向document起泡。Event.stopPropagation()可以停止                            传播,preventDefault可以阻止事件的默认动作

                              addEventListener("eventType","handler","true!false"); //true, 在捕捉的阶段调用;false,在后两个阶段调用;

                              removeEventListner("eventType","handler","true!false");

            事件合成             

          1)创建合适的事件对象:

    var e=document.createEvent("HTMLEvents");

          2)初始化事件对象域(即:属性)

    e.initEvent("click","true","true");

          3)分派事件对象:

    eventTarget.dispatchEvent();
    -------------------------------------------------------------------------                         

     (3)IE事件模型                     

                IE事件对象也有,但只是window的一个属性;目标元素的处理函数——〉document,只能捕获鼠标事件;事件处理函数的添加和删除通过:attachEvent(                                 "eventType","handler") and detachEvent("eventType","handler" );

          indow.ecent.cancelBubble=true;

                   事件注册函数:attachEvent()和反注册:detachEvent().

    -------------------------------------------------------------------------

    (4)Netscape事件模型

    -----------------------------------------------------------------------------------------------------------------------------------------------

    3. 

    前端-语言
  • 相关阅读:
    Node.js v0.10.1 稳定版发布
    PHP 5.5.0 Alpha6 发布
    DataNucleus Access Platform 3.2 正式版发布
    Swipe 2.0 发布,移动端滑动 JS 库
    Kamailio 4.0 发布,开源的SIP服务器
    PeerJS 0.1.7:一个用于浏览器内P2P的WebRTC封装器
    Apache Libcloud 0.12.3 发布
    IE 10将加强对Flash的支持
    JBoss Portlet Bridge 3.2.0.Beta2 发布
    如何在遗留代码基础上开发
  • 原文地址:https://www.cnblogs.com/beesky520/p/4863877.html
Copyright © 2011-2022 走看看