집 >
웹 프론트엔드 >
JS 튜토리얼 >
JavaScript 애플리케이션 라이브러리 code_javascript 기술
JavaScript 애플리케이션 라이브러리 code_javascript 기술
WBOY
풀어 주다: 2016-05-16 19:04:05
원래의
956명이 탐색했습니다.
/* $ 지정된 객체 가져오기 @element 객체 이름 객체 이름 컬렉션을 사용할 수 있으며, 반환 값은 객체 컬렉션입니다 프로토타입 클래스 라이브러리를 넣으세요. 이 함수는 Sams_object.Get() */ function $(element) { if (arguments.length > 1에서 이 함수를 구현하는 모든 함수를 주석 처리합니다. ) { for (var i = 0, elements = [], length =args.length; i elements.push($(arguments[i])) 요소 반환 ; } if (typeof element == 'string') element = document.getElementById(element) return element;
/* 홈페이지로 설정 @url 홈페이지로 설정할 주소 */ SetDefault: function () { this.style.behavior='url(#default #homepage)'; this.setHomePage(this.GetUrl()); return false },
/* 지정된 URL 주소 복사 문자 클립보드에 기록되도록 설정 */ SetCopy : function (Msg){ if(navigator.userAgent.toLowerCase().indexOf('ie') > -1) { clipboardData .setData('Text',Msg) ; Alert ("웹사이트 주소 "" Msg ""
클립보드에 복사되었습니다.
Ctrl V 단축키를 사용하여 필요한 곳에 붙여넣을 수 있습니다."); } else { 프롬프트("웹사이트 주소를 복사하세요:",Msg); } },
/* 즐겨찾기 추가 @site 사이트 이름 @url 주소 */ AddBookmark: 기능(사이트, URL){ if(navigator.userAgent .toLowerCase().indexOf('ie') > -1) { window.external.addFavorite(url,site) } else if (navigator.userAgent.toLowerCase().indexOf ('opera') > -1) { warning ("이 페이지를 즐겨찾기에 추가하려면 Ctrl T를 사용하십시오.") } else { Alert ("이 페이지를 추가하려면 Ctrl D를 사용하십시오. to your favorites"); } },
/* Url에서 지정한 너비와 높이로 창을 엽니다. */ OpenWindows: function (url,width,height) { window.open( url,'newwin','width=' width ',height=' height) return false },
/* 페이지 소스 가져오기 */ GetFrom : function(){ return document.referrer },
/* 지정된 URL 매개변수 값 가져오기 @name 매개변수 이름 */ 요청: function(name){ var GetUrl = this.GetUrl() var Plist = new Array(); if(GetUrl.indexOf('?') > 0) { Plist = GetUrl.split('?')[1].split(' &'); } else if(GetUrl.indexOf('#') > 0) { Plist = GetUrl.split('#')[1].split('& '); } if (GetUrl.length > 0) { for(var i=0; i { var GetValue = Plist[i].split('='); if (GetValue[0].toUpperCase() == name.toUpperCase()) { return GetValue[1] break ; } } return } },
/* 새 창에 HTML 직접 작성 @title 제목 @msg 내용 */ Popmsg : function PopIt(title,msg) { var popup = window.open('','popDialog','height=500,width=400,scrollbars=yes '); popup.document.write('' 제목 '' msg '') popup.document.close(); } };
/// 객체 작업 var Sams_object = {
/* DIV 객체 @ID 생성할 객체의 ID @ClassName 생성된 객체의 클래스 @SetValue 객체의 값을 설정 @ToDiv 객체를 지정된 객체에 추가합니다. 지정된 객체가 없으면 Body 뒤에 추가 생성된 객체 반환 */ CreateDiv : function (ID,ClassName,SetValue,ToDiv){ varcreatediv = document.createElement ('div'); if(ID != null) Creatediv.id = ID Creatediv.style.position = 'absolute' if(ClassName != null) Creatediv.className = ClassName ; if( this.Get(ToDiv)) { this.Get(ToDiv).appendChild(creatediv) } else { document.getElementsByTagName ('body')[ 0].appendChild(creatediv); } this.SetValue(ID,SetValue) return this.Get(ID); 🎜>/* 지정된 DIV 객체 삭제 @objid 삭제할 객체 ID Return Bool 연산 결과 */ DeleteDiv: function (objid) { try { if( this.Get(objid)) { var GetParent = this.Get(objid).parentNode; GetParent.removeChild(this.Get(objid)); return true } else { return false } } catch(e) { return false; },
/* 브라우저 객체 가져오기 @id 가져올 객체 ID 객체 이름 컬렉션을 사용할 수 있으며 반환 값은 객체 컬렉션입니다 */ Get: 함수(objid) { if (arguments.length > 1) { for (var i = 0, objid = [], length =args.length; i objids.push(this.Get (arguments[i])); return objids; } if (typeof objid == 'string') { if (document.getElementById) { objid = document.getElementById(objid); } else if (document.all) { objid = document.all[objid] } else if ( document.layers) { objid = document.layers[objid] } } return objid },
/* 객체의 값 가져오기 @objid 객체 ID */ GetValue: function (objid) { if (typeof objid == 'string') { var getTagName = this.Get(objid).tagName.toLowerCase(); if (getTagName == 'input' || getTagName == 'textarea' || getTagName == 'select' ) { return this.Get(objid).value; } else if (getTagName == 'div' || getTagName == 'span') { return this .Get(objid).innerText } } else if (typeof objid == 'object') { return objid.value; >} ,
/* 지정된 객체의 값을 설정하고 직접 할당 또는 지우기 작업을 실현합니다. @objid Object ID @inserValue 값을 전달합니다(선택 사항 Null: 값 지우기) ID를 지정한 다음 직접 할당) */ SetValue: function(objid,inserValue) { var getTagName = this.Get(objid).tagName.toLowerCase() if (inserValue) == null) insertValue = ''; if (getTagName == 'input' || getTagName == 'textarea') { this.Get(objid).value = insertValue; } else if (getTagName == 'div' || getTagName == 'sapn') {
this.Get(objid).innerText = insertValue; } },
/* 객체 값을 클립보드에 복사 @str 객체 값 */ CopyCode: function (str) { var rng = document.body.createTextRange() ; rng .moveToElementText(str); rng.select() rng.collapse(false) ; } ,
/* 객체 표시 및 숨기기 @Objid 객체 ID @isshow 특정 작업의 경우 Obj를 False로 지정: 없음 또는 True: 차단(선택 사항) */ ShowHidd : function(objid,isshow){ if (isshow != null) { if(isshow) { this.Get(objid). style.display = 'block'; } else { this.Get(objid).style.display = 'none' } } else { if(this.Get(objid).style.display == 'none') { this.Get(objid).style.display = '차단' } else { this.Get(objid).style.display = 'none'; } } },
/// 문자 처리 var Sams_string = { /* 왼쪽에 지정된 값을 가져옵니다. 길이의 값 @str 처리할 문자 집합 @n 길이 */ 왼쪽: 함수(str,n) { if (str.length > 0) { if(n>str.length) n = str.length return str.substr(0,n) } else { 반환 } },
/* 오른쪽에 지정된 길이의 값을 가져옴 @str 처리할 문자 집합 @n 길이 */ 오른쪽: 함수(str,n ) { if(str.length > 0) { if(n>=str.length) return str return str.substr(str.length-n,n) ); } else { return } },
/* 자르기: 양쪽 공백 지우기 @str 문자 집합 처리 예정 */ Trim : function (str) { if (typeof str == 'string') return str.replace(/(^s*)|(s*$ )/g, ' '); },
/* LTrim: 왼쪽 공백 지우기 @str 처리할 문자 집합 */ Ltrim: 함수(str) ) { if (typeof str == 'string') return str.replace(/(^s*)/g, '') },
/* RTrim : 오른쪽 공백 지우기 @str 처리할 문자 세트 */ Rtrim: function (str) { if (typeof str == 'string') return str .replace(/(s* $)/g, ''); },
/* 앞뒤에 없는 문자 지우기 @str 처리할 문자 집합 * / 스트립: function(str ) { if (typeof str == 'string') return str.replace(/^s /, '').replace(/(^s*)|(s* $)/g, ''); },
/* 문자에서 HTML 태그 필터링 @str 처리할 문자 세트 */ stripTags: function(str) { if (typeof str == 'string')return str.replace(/?[^>] >/gi, '').replace(/(^s*)|(s*$) /g, ''); } };
/// 시간 관련 연산 var Sams_time = { /* 오늘 날짜 가져오기 yyyy-MM-dd * / GetDateNow : 함수(){ var d,y,m,dd; d = new Date() y = d.getYear() m = d. getMonth() 1; dd = d.getdate (); Return y "-" m "-" dd
/*날짜 지정된 날짜 이후 @todate 현재 지정된 현재 날짜 @N 추가할 날짜 수 */ AddDays: function(toDate,N){ var aDate=this._cvtISOToDate( toDate); if (!aDate) return " "; var millis=86400000 * N; aDate=new Date(aDate.getTime() millis) return this._fmtDateISO(aDate ); }, _fmtDateISO : 함수 (aDate) { with (aDate) { var mm=getMonth() 1 if (mm var dd=getDate() ; if (dd return (getFullYear() '-' mm '-' dd); } }, _cvtISOToDate : 함수(isoDate) { varatomDate=isoDate.split('-') var aDate=new Date(parseInt(atomDate[0], 10),parseInt(atomDate[1],10)- 1,parseInt(atomDate[2],10),6,0,0) return aDate; /// 이미지 관련 작업 var Sams_media = { /* 단일 이미지에 마우스 가운데 버튼 확대/축소 기능을 추가합니다. 일괄 처리의 경우 ResizeImage를 직접 사용할 수 있습니다(이 기능을 추가하려면 이미지 크기를 지정하세요.) : Int) (이 함수는 IE에만 적용 가능합니다.) objid 개체 ID */ ZoomFun : function(objid){ Sams_object.Get(objid).onmousewheel = function(){return Sams_media.imagecontrol(this);} },
/* 이미지 크기를 재설정하고 확대/축소 기능을 추가합니다. (이 기능은 IE에만 해당됩니다.) @IntSize 이미지 크기 지정 이미지 크기에 맞으면 추가 확대/축소 기능 * / ResizeImage: function (IntSize) { var imgsinlog=document.getElementsByTagName('img') for(j=0; j if (imgsinlog [j].width >= IntSize) { imgsinlog[j].width = IntSize; imgsinlog[j].style.cursor= imgsinlog[j ].onclick = function( ) {window.open(this.src);} if (navigator.userAgent.toLowerCase().indexOf('ie') > -1) { imgsinlog[j]. title = '이미지를 확대하려면 마우스 가운데 버튼을 사용하거나 Ctrl 마우스 휠을 사용하면 됩니다. imgsinlog[j].onmousewheel = function() {return Sams_media.imagecontrol(this);}; } else { imgsinlog[j].title = '새 창에서 열려면 이미지를 클릭하세요.' } } } }, imagecontrol : function( obj){ var Zoom=parseInt(obj.style.zoom, 10)||100;zoom =event.wheelDelta/ 12; if (zoom>0) obj.style.zoom '%' ; return false },
/* 이미지와 같은 예외가 있는 경우; 다운로드할 수 없습니다. 오류 프롬프트 이미지가 표시됩니다. @errimgpath 오류 프롬프트의 이미지 경로 */ ImagesError : function(errimgpath){ var imglist = document.getElementsByTagName('img') ; for(j=0; j imglist[j].onerror = function(){ this.src = errimgpath; },
/* 표시 미디어 @mFile 파일 경로 @mFileType 파일 유형(비어 있을 수 있음, Flash인 경우 swf 유형 지정) @ObjID 개체 ID @mWidth 표시된 개체 너비 @mHeight 표시된 개체 높이 참고: 개체를 지정할 수 있습니다. ID가 없으면 ID가 자동으로 생성되어 Body 뒤에 추가됩니다. / ShowMedia: function (mFile, mFileType, ObjID, mWidth, mHeight) { var mediaStr switch( mFileType){ case "swf": mediaStr="
/// 스타일 관련 작업 var Sams_style = { /* 글꼴 크기 변경 @objid 개체 ID @size 글꼴 크기 */ doZoom : function (objid, size){ Sams_object.Get(objid).style.fontSize=size ' px';,
/* 지정된 객체의 스타일 변경 @objid 객체 ID @className 변경할 ClassName */ ClassName: function(objid, className) { Sams_object .Get(objid).className = className; },
/* 객체 위치 지정 @obj 위치 지정할 객체 X.Y 결과의 배열 객체를 반환합니다 */ GotoXY: 함수(obj) { var t=obj.offsetTop; var l=obj.offsetLeft; while(obj=obj.offsetParent){ t =obj.offsetTop; l =obj.offsetLeft; } return Array(t,l);
/// 🎜>var Sams_account = { /* 1부터 10까지 계산 @ Value */ GetTen: function (i) { var items_One,Get_One if (i.length > 1&& (/^d $/.test(i))) { items_One = i.substr(0,i.length-1) Get_One = i.substr (i.length-1,1); if (parseInt(Get_One)>0) { items_One =parseInt(items_One) items_One = items_One } El se { items_One = items_One } } else { items_One = } return items_One; } };
/// 데이터 유효성 검사(모든 숫자 반환 값은 Bool 유형) var Sams_validate = { /* 숫자인지 여부 data @str 문자 집합 */ IsNumber : function(str){ if (/^d $/.test(str)){return true;}else{return false;} },
/* 숫자 데이터인지 여부 @objid 개체 ID */ IsNumberObj: function(objid){ return this.IsNumber(Sams_object. GetValue(objid)) },
/* 자연수 데이터인가요 @str 문자 집합 */ IsInt: function(str){ if (/^( |-)? d $/.test(str)){return true;}else{return false;} },
/* 여부 한자입니다 @str 문자 집합 */ IsChina : function(str) { if (/^[u4e00-u9fa5] $/.test(str)) {return true;}else{return false;} },
/* 한자인가요? .GetValue(objid))
/* 영문자인지 @str 문자 집합 */ IsLower: function(str) { if (/^[A-Za-z] $/.test( str)){return true}else{return false;} },
/* 영문자인지 여부 @objid 개체 ID */ IsLowerObj : 함수 (objid) { return this.IsLower(Sams_object.GetValue(objid)) },
/* 올바른 URL인가요? @str 문자 집합 */ IsUrl: function(str) { var myReg = /^((http:[/][/] )?w ([.]w |[/]w*)* )?$/; if(myReg.test(str)){return true;}else{return false;} },
/* URL이 맞나요? )); },
/* 올바른 이메일 형식인가요? @str 문자 집합 */ IsEmail: function(str) { var myReg = /^([-_A-Za-z0-9.] )@([_A-Za-z0-9] .) [A-Za-z0-9]{2,3}$/; if (myReg.test(str)){return true;}else{return false;} },
/* 올바른 이메일 형식인가요? @objid 개체 ID */ IsEmailObj : function(objid) { return this.IsEmail(Sams_object.GetValue(objid)) },
/* 휴대폰 번호 맞나요? @str 문자 집합 */ IsMobile: function(str) { var regu =/( ^[ 1][3][0-9]{9}$)|(^0[1][3][0-9]{9}$)/ var re = new RegExp(regu) ; if (re.test(str)){return true;}else{return false;} },
/* 휴대폰 번호가 맞나요? @objid 개체 ID */ IsMobileObj : function(objid) { return this.IsMobile(Sams_object.GetValue(objid)) } }; >/* Ajax 기능 구현 Sams_ajax.SendRequest('GET', url, null, presents, "addtohome") Sams_ajax.SendRequest('GET', url, null, null); 🎜>obj.responseText; */ var Sams_ajax = { _objPool: [], _getInstance: function (){ for (var i = 0; i ~ . :function (){ if (window.XMLHttpRequest){ var objXMLHttp = new XMLHttpRequest() } else{ var MSXML = [ 'MSXML2.XMLHTTP.5.0', 'MSXML2 .XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP', 'Microsoft.XMLHTTP'] for(var n = 0; n 시도 { objXMLHttp = new ActiveXObject(MSXML[n]) break; } > objXMLHttp .readyState = 4; == "기능"){ } return objXMLHttp;,