zoukankan      html  css  js  c++  java
  • 封装常用的Javascript跨浏览器方法

    var EventUntil={
    	// 跨浏览器的添加事件方法
    	addHandler:function(element,type,handler){
    		if(element.addEventListener){
    			element.addEventListener(type,handler,false);
    		}else if(element.attachEvent){
    			element.attachEvent('on'+type,handler);
    		}else{
    			element['on'+type]=handler;
    		}
    	},// 注意此处的逗号
    
    	// 跨浏览器的移除事件方法
    	removeHandler:function(element,type,handler){
    		if(element.removeEventListener){
    			element.removeEventListener(type,handler,false);
    		}else if(element.detachEvent){
    			element.detachEvent('on'+type,handler);
    		}else{
    			element['on'+type]=null;
    		}
    	},
    
    	// 跨浏览器的事件对象
    	// 返回对event对象的引用
    	getEvent:function(event){
    		return event ? event : window.event;
    	},
    	// 返回事件的目标
    	getTarget: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;
    		}
    	},
    
    	//通过class获取元素(数组集合)
    	getByClass:function(clsName,parent){
    		var oParent = parent ? document.getElementById(parent) : document,
    			oAllel=document.getElementsByTagName('*'),
    			aResult=[];
    		for(var i=0 ; i<oAllel.length; i++){
    			if(oAllel[i].className==clsName){
    				aResult.push(oAllel[i]);
    			}
    		}
    		return aResult;
    	}
    }
    
  • 相关阅读:
    留言板
    阿里云ECS 个人博客搭建流程
    安卓包 无崩溃文件的崩溃问题解决
    win10家庭版 远程桌面解决方案
    python int(a/b)和//的区别(转)
    git基本操作
    《代码整洁之道》读后总结
    《人月神话》的观点:是与非?
    小白第一次装机体验
    python2和python3之间的差异和区别
  • 原文地址:https://www.cnblogs.com/lvmylife/p/5351658.html
Copyright © 2011-2022 走看看