通用的事件侦听器

 //通用的事件侦听器
        var eventWatch={
            readyEvent:function(fn){
                if(fn==null){
                    fn=document
                }
                var oldonload=window.onload;
                if(typeof window.onload!='function'){
                    window.onload=fn;
                }else{
                    window.onload=function(){
                        oldonload();
                        fn();
                    }
                }
            }
            //添加事件
            addEvent:function(ele,type,handler){
                if(ele.addEventListener){
                    ele.addEventListener(type,handler,false)
                }else if(ele.attachEvent){
                    ele.attachEvent('on'+type,function(){
                        handler.call(ele)
                    })
                }else{
                    ele['on'+type]=handler;
                }
            }
            //移除事件
            removeEvent:function(ele,type,handler){
                if(ele.removeEventListener){
                    ele.removeEventListener(type,handler,false);
                }else if(ele.detachEvent){
                    ele.detachEvent('on'+type,handler)
                }else{
                    ele['on'+type]=null;
                }
            }
            //阻止冒泡
            stopPropagation:function(e){
                var ev=e || window.event;
                if(ev.stopPropagation){
                    ele.stopPropagation();
                }else{
                    ev.cancleBubble=true;
                }
            }
            //阻止默认事件
            preventDefault:function(e){
                var ev=e || window.event;
                if(ev.preventDefault){
                    ev.preventDefault();
                }else{
                    ev.returnValue=0;
                }
            }
            //获取目标事件
            getTarget:function(){
                return event.target || event.srcElement
            }

        }

你可能感兴趣的:(通用的事件侦听器)