zoukankan      html  css  js  c++  java
  • 自己收集原生js-2014-2-15

    function testforbtn(event){
    
        alert(window.EventUtil.getEventTarget(window.EventUtil.getEvent( event)));
        //event.target
        //event.type
        //event.currentTarget
        //event.srcElement
    
    }
    
    (function(){})(
        window.EventUtil={
            addHandler:function(element,type,handler){
               // alert(1);
                if(element)
                {
                    //alert(2);
                    if(element.addEventListener)
                    {
                       // alert(3);
                        element.addEventListener(type,handler,false);
                    }else if(element.attachEvent)
                    {
                       // alert(4);
                        element.attachEvent("on"+type,handler);
                    }else{
                       // alert(5);
                        element["on"+type]=handler;
                    }
    
                }
            },
            removeHandler:function(element,type,handler){
                if(element)
                {
                    if(element.removeEventListener){
                        element.removeEventListener(type,handler,false);
                    }else if(element.detachEvent){
                        element.detachEvent("on"+type,handler);
                    }else{
                        element["on"+type]=null;
                    }
                }
    
            },
            addReady: function(fn){
                if(document.addEventListener){//兼容非IE
                    document.addEventListener("DOMContentLoaded",function(){
                        //注销事件,避免反复触发
                        document.removeEventListener("DOMContentLoaded",arguments.callee,false);
                        fn();//调用参数函数
                    },false);
                }else if(document.attachEvent){//兼容IE
                    IEContentLoaded (window, fn);
                }
                function IEContentLoaded (w, fn) {
                    var d = w.document, done = false,
                    // only fire once
                        init = function () {
                            if (!done) {
                                done = true;
                                fn();
                            }
                        };
                    // polling for no errors
                    (function () {
                        try {
                            // throws errors until after ondocumentready
                            d.documentElement.doScroll('left');
                        } catch (e) {
                            setTimeout(arguments.callee, 50);
                            return;
                        }
                        // no errors, fire
    
                        init();
                    })();
                    // trying to always fire before onload
                    d.onreadystatechange = function() {
                        if (d.readyState == 'complete') {
                            d.onreadystatechange = null;
                            init();
                        }
                    };
                }
            },
            getEvent:function(event){
                return event?window.event:event;
            },
            getEventTarget:function(event){
                return event.target||event.srcElement;
            },
            preventDefault:function(event){
                if(event.preventDefault){
                    event.preventDefault();
                }else{
                    event.returnValue=false;
                }
            },
            stopPropagation:function(event){
                if(event.stopPropagation){
                    event.stopPropagation();
                }
                else{
                    event.cancelBubble=true;
                }
    
            }
    
            }
    );
    
    
    
    window.EventUtil.addReady(
        function(){
            var btn1=document.getElementById("mybtn");
    
            window.EventUtil.addHandler(btn1,"click",testforbtn);
        }
    );
  • 相关阅读:
    MySQL -- 表联结
    Unittest方法 -- 项目实现自动发送邮件
    Linux工作中常用命令
    Requests方法 -- Token获取操作
    Requests方法 -- 关联用例执行
    Requests方法 -- Blog流程类进行关联
    Requests方法 -- 参数化
    defer和async的区别
    js函数收藏:获取cookie值
    XSHELL使用技巧总结
  • 原文地址:https://www.cnblogs.com/qqloving/p/3550726.html
Copyright © 2011-2022 走看看