• dom3级事件


    自定义事件的触发

    1. 对于标准浏览器,其提供了可供元素触发的方法:element.dispatchEvent(). 不过,在使用该方法之前,我们还需要做其他两件事,及创建和初始化。因此,总结说来就是:

    document.createEvent()
    event.initEvent()
    element.dispatchEvent()

    举个板栗:

    $(dom).addEvent("alert", function() {
        alert("弹弹弹,弹走鱼尾纹~~");
    });
    
    // 创建
    var evt = document.createEvent("HTMLEvents");
    // 初始化
    evt.initEvent("alert", false, false);
    
    // 触发, 即弹出文字
    dom.dispatchEvent(evt);
    

    createEvent()方法返回新创建的Event对象,支持一个参数,表示事件类型,具体见下表:

    参数事件接口初始化方法
    HTMLEvents HTMLEvent initEvent()
    MouseEvents MouseEvent initMouseEvent()
    UIEvents UIEvent initUIEvent()

    关于createEvent()方法我自己了解也不是很深入,不想滥竽充数,误人子弟,所以您有疑问我可能作答不了,希望对熟知该方法的人可以做进一步的解释说明(例如事件接口与document关系,UIEvent是什么东西等)。

    initEvent()方法用于初始化通过DocumentEvent接口创建的Event的值。支持三个参数:initEvent(eventName, canBubble, preventDefault). 分别表示事件名称,是否可以冒泡,是否阻止事件的默认操作。

    dispatchEvent()就是触发执行了,dom.dispatchEvent(eventObject), 参数eventObject表示事件对象,是createEvent()方法返回的创建的Event对象。

  • 相关阅读:
    Java设计模式之原型模式
    Java设计模式之单例模式
    Java设计模式之抽象工厂模式
    Java设计模式之工厂方法模式
    redis常用配置参数详解
    Maven版本的ssm框架项目常见依赖pom.xml
    Maven中setting.xml配置Demo
    Linux中安装jdk
    Linux中查看jdk安装目录、Linux卸载jdk、rpm命令、rm命令参数
    Hibernate主键生成策略
  • 原文地址:https://www.cnblogs.com/xuzishuai/p/9104710.html
Copyright © 2020-2023  润新知