크로스 브 라 우 저 자바 script 이벤트 처리 추가
                                            
 2777 단어  JavaScript
                    
var EventUtil={
		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;
			}
		},
		getEvent:function(event){
			return event?event:window.event;
		},
		getTarget:function(event){
			return event.target||event.srcElement;
		},
		/**
		 *         
		 * @param event
		 * @returns
		 */
		getRelatedTarget:function(event){
			if(event.relatedTarget){
				return event.relatedTarget;
			}else if(event.toElement){
				return event.toElement;
			}else if(event.fromElement){
				return event.fromElement;
			}else {
				return null;
			}
		},
		/**
		 *           
		 * @param event
		 * @returns
		 */
		getMouseButton:function(event){
			if(document.implementation.hasFeature("MouseEvents", "2.0")){
				return event.button;
			}else {
				switch (event.button) {
				case 0:
				case 1:
				case 3:
				case 5:
				case 7:
					return 0;
				case 2:
				case 6:
					return 2;
				case 4:
					return 1;
				}
			}
		},
		/**
		 *         
		 * @param event
		 * @returns
		 */
		getWheelDelta:function(event){
			if(event.wheelDelta){
				return (client.engine.opera&&client.engine.opera<9.5 ?
						-event.wheelDelta : event.wheelDelta);
			}else {
				return -event.detail * 40;
			}
		},
		/**
		 *       
		 * @param event
		 * @returns
		 */
		getCharCode:function(event){
			if(typeof event.charCode == "number"){
				return event.charCode;
			}else {
				return event.keyCode;
			}
		},
		/**
		 *        
		 * @param event
		 * @returns
		 */
		getClipboardText:function(event){
			var clipboardData=(event.clipboardData || window.clipboardData);
			return clipboardData.getData("text");
		},
		/**
		 *        
		 * @param event
		 * @param value
		 * @returns
		 */
		setClipboardText:function(event,value){
			if(event.clipboardData){
				return event.clipboardData.setData("text/plain",value);
			}else if(window.clipboardData){
				return window.clipboardData.setData("text",value);
			}
		},
		preventDefault:function(event){
			if(event.preventDefault){
				event.preventDefault();
			}else {
				event.returnValue=false;
			}
		},
		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;
			}
		},
		stopPropagation:function(event){
			if(event.stopPropagation){
				event.stopPropagation();
			}else {
				event.cancelBuble=true;
			}
		}
};
                이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
기초 정리 - 1문자 (String) 숫자 (Number) 불린 (Boolean) null undefined 심볼 (Symbol) 큰정수 (BigInt) 따옴표로 묶어 있어야 함 Not-A-Number - 숫자 데이터 / 숫자로 표...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.