>  기사  >  웹 프론트엔드  >  일반적으로 사용되는 JS 함수 코드_javascript 기술

일반적으로 사용되는 JS 함수 코드_javascript 기술

WBOY
WBOY원래의
2016-05-16 18:51:051174검색
코드 복사 코드는 다음과 같습니다.

//获取对象
function getObject(objectId,top)
{
doc = top?window.top.document:document;
if(typeof(objectId)!="object" && typeof(objectId)!="function")
{
if(doc.getElementById && doc.getElementById(objectId))
{
// W3C DOM
return doc.getElementById(objectId);
}
else if(doc.getElementsByName(objectId))
{
return doc.getElementsByName(objectId)[0];
}
else if (doc.all && doc.all(objectId))
{
// MSIE 4 DOM
return doc.all(objectId);
}
else if (doc.layers && doc.layers[objectId])
{
// NN 4 DOM.. 참고: 이렇게 하면 중첩된 레이어를 찾을 수 없습니다.
doc를 반환합니다. 레이어[객체 ID];
}
else
{
false를 반환합니다.
}
}else
return objectId;
}
//获取상对路径
function getRelativePath()
{
var url = location.href;//当前url
var urlcs = String(location.search);
url = url.replace(urlcs,"");
var 경로 = url.length - url.replace(///g,"").length - 3; //URL이 url包含/적의 속도-没有包含/적의 속도/적중

var str = "";
for(var i = 0; i < path; i )
{
str = "../";//组合成一个상对路径字符串返回
}
str을 반환;
}
//加载其他JS文件或CSS文件
function loadjscssfile(filename,filetype,chkonce)
{
filetype = !filetype?"js":filetype;
var = false;
if(filetype=="js")
{
if(chkonce)
{
var allScripts = document.getElementsByTagName("script");
for(var i=0;i{
try{
if(allScripts[i].src.indexOf(filename)>-1)
{
했다 = 사실;
휴식;
}
}catch(e){}
}
}
if(!had)
{
document.write("");
}
}else
{
if(chkonce)
{
var allCss = document.getElementsByTagName("link");
if(allCss.length)
{
for(var i=0;i{
시도{
if(allCss[i]. href.indexOf(파일 이름)>-1)
{
had = true;
휴식;
}
}catch(e){}
}
}
}
if(!had)
{
document.write("<링크 유형 ='text/css' rel='stylesheet' href="" 파일 이름 "" href="" 파일 이름 "" />");
}
}
}
//정정义根目录路径
var ROOT_PATH = getRelativePath();
var JS_PATH = ROOT_PATH 'js/';
var AJAX_PATH = ROOT_PATH 'ajax/';
var CSS_PATH = ROOT_PATH 'css/';
var IMAGES_PATH = ROOT_PATH '이미지/';
var EDITOR_PATH = ROOT_PATH 'uploadeditor/';
var PUB_PATH = ROOT_PATH '업로드파일/';

//加载공공共变량적 JS
loadjscssfile(JS_PATH "globalPara.js");

//设置下拉表中某一项被选中
function setSelOption(objId,vlu)
{
objId = getObject(objId);
for(var i=0;i{
if(objId.options[i].value==vlu)
{
objId. options[i].setAttribute("selected","selected");
휴식;
}
}
}
//根据下拉表中的option文本设置某一项被选中
function setTxtOption(objId,txt)
{
objId = getObject (objId);
for(var i=0;i{
if(objId.options[i].innerHTML==txt)
{
objId. options[i].setAttribute("selected","selected");
휴식;
}
}
}

//设置单选按钮组中某一项被选中
function setSelRadio(objName,vlu)
{
objName = document.getElementsByName(objName);
for(var i=0;i{
if(objName[i].value==vlu)
{
objName[i].setAttribute ("체크됨","체크됨");
휴식;
}
}
}

//根据ID设置复选框中某些项被选中
//vlu 的格式为 : 1,2,3
function setSelCheckbox(prefix,vlu)
{
var _arr = vlu.split(",");
if(_arr!="")
{
for(var i=0; i<_arr.length; i )
{
getObject(prefix _arr[i]).checked = 사실;
}
}
}

//快捷输入,fromObj:来源对象,toObjId:目标对象的ID ,txt为true时取toObjId的innerHTML值
함수 ( fromObj,toObjId,txt)
{
if(fromObj.value=='' || fromObj.value==0) return false;
txt = !txt ? 거짓 : txt;
var toObj = getObject(toObjId);
if(txt)
{
if(typeof (toObj.value) == '정의되지 않음')
toObj.innerHTML = toTxt(fromObj.options[fromObj.selectedIndex].innerHTML);
else
toObj.value = toTxt(fromObj.options[fromObj.selectedIndex].innerHTML);
}else
{
if(typeof (toObj.value) == '정의되지 않음')
toObj.innerHTML = fromObj.value;
else
toObj.value = fromObj.value;
}
}

/*
IE6,IE7上传图文前预览图文
IE6下还可以同时测图文字大小
size 单位为KB
< ;style type="text/css">



*/
function PreviewImg(imgFile,newPreview,ndsPreview,size)
{
newPreview = getObject(newPreview);
if(!imgFile || !imgFile.value || !newPreview){return};
var patn = /.jpg$|.jpeg$|.gif$|.png$|.bmp$/i;
if(patn.test(imgFile.value))
{
try{newPreview.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgFile.value;}catch(e){ }
if(navigator.appVersion.indexOf("MSIE 6.0",0)>-1)
{
size=!size?0:size;
ndsPreview = getObject(ndsPreview);
if(ndsPreview)
{
try{ndsPreview.attachEvent("onreadystatechange", function(){checkImgSize(ndsPreview,size)})}catch(e){}
ndsPreview.src = img파일.값;
}
}
}
else
{
alert("您选择的不是图image文件,请重新选择.");
}
}
function PreviewImgNow(imgDiv,imgFile)
{
try{getObject(imgDiv).filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgFile}catch (e){}
}
//上传之前检测图pictures큰크기
//条件是재파일改变时要触发函数将缩略图显示在img上
//size 单位为KB
함수 checkImgSize(img,size)
{
img = getObject(img);
if(img.readyState == "complete")
{
varlimit = size * 1024;
if(img.fileSize > 제한)
{
alert("출시!업로드한 이미지의 크기가 " (parseInt(img.fileSize/1024)) "KB입니다. 이는 " 크기 "KB, 다시 업로드해 주십시오.");
return false
}else
return true ;
}
return true;
}
//클라이언트 환경 감지
function ClientMentInfo()
{
var me
var appVer = navigator .userAgent;

this.GetBrowserName = function (){
if(appVer.indexOf("MSIE")>0) return "IE"
else if(appVer. indexOf(" Firefox")>0) return "Firefox";
else if(appVer.indexOf("Chrome")>0) return "Chrome"
else if(appVer.indexOf("Safari) ")> ;0) "Safari" 반환;
else if(appVer.indexOf("Camino")>0) return "Camino";
else if(appVer.indexOf("Konqueror")> 0) "Konqueror"를 반환합니다.
그렇지 않으면 "기타"를 반환합니다.

this.GetOSInfo = function(){
var _pf = navigator.platform; == " Win32" || _pf == "Windows")
{

if(appVer.indexOf("Windows NT 6.0") > -1 || appVer.indexOf("Windows Vista" ) > -1)
{
return 'Windows Vista';
}else if(appVer.indexOf("Windows NT 6.1") > -1 || appVer.indexOf("Windows 7" ) > -1)
{
return 'Windows 7';
}else
{
try{
var _winName = Array('2000','XP',' 2003') ;
var _ntNum = appVer.match(/Windows NT 5.d/i).toString()
return 'Windows' _winName[_ntNum.replace(/Windows NT 5.(d)/ i," $1")];
}catch(e){return 'Windows';}
}
}else if(_pf == "Mac68K" || _pf == "MacPPC" || _pf == "Macintosh")
{
return "Mac";
}else if(_pf == "X11")
{
return "Unix"; if(String (_pf).indexOf("Linux") > -1)
{
return "Linux";
}else
{
return "알 수 없음"; }
}

this.OS = me.GetOSInfo(); //운영 체제 유형
this.IeVer =
this.Bs_lang = (navigator.appName == 'Netscape '?navigator .언어:navigator.browserLanguage);//브라우저 언어 버전
this.Bs_Name = me.GetBrowserName(); //브라우저 이름

//브라우저 버전
if(this. Bs_Name=='IE')
{
var _msie = appVer.match(/MSIE d./i).toString()
this.Bs_Version = this.IeVer = _msie.replace(/MSIE (d)./i,"$1");
}else
{
this.Bs_Version = appVer;
}
this.Ie6 = this.IeVer==6 ? false;
this.Ie7 = this.IeVer==7 ? true: false
this.Ie8 = this.IeVer==8 ? true: false; 🎜>var CMInfo = new ClientMentInfo();
//IE6의 배경 이미지 캐시
if(CMInfo.Ie6)
{
document.execCommand("BackgroundImageCache", false, true)
}
//모든 체크박스를 선택하거나 선택 취소하도록 설정
function setAllCheckbox(formName,objName,num)
{
if(formName)
_arr = getObject(formName ).elements [objName];
else
_arr = typeof(objName)=="object"?objName:document.all(objName)
if(_arr)
{
if (num)
{
if (!_arr.length ) // 체크박스가 하나만 있으면 길이 = 정의되지 않음
_arr.checked = true
else
{
for (var i =0; i<_arr.length i>{
_arr[i].checked = true
}
}
}else
{
_arr.length ) // 체크박스가 하나만 있는 경우 length = undefine
_arr.checked = false
else
{
for(var i=0; i<_arr.length; i )
{
_arr[i].checked = false;
}
}
}
}
}

//현재 페이지 만들기 지정된 페이지 번호로 이동
function goPage(pageNum,pageStr)
{
window.location.href = "?np=" pageNum pageStr
}
//각각 공백으로 이동 그리고 문자열 뒤, 왼쪽과 오른쪽
String.prototype.trim = function(){ return this.replace(/^s |s $/g,"")}
String.prototype. ltrim = function( ){ return this.replace(/^s /g,"")}
String.prototype.rtrim = function(){ return this.replace(/s $/g,"")}


이 기사는 CSDN 블로그에서 가져온 것입니다. 재인쇄할 때 출처를 표시해 주세요: http://blog.csdn.net/linyuanxing/archive/2008/12/01/3421058.aspx


globalPara.js에 주목하세요. 이 작성자는 각 웹사이트의 공통 변수 및 상수 파일을 자주 사용합니다. 이러한 파일이 필요하지 않은 경우에는
//JS를 넣어 공용 변수를 로드할 수 있습니다loadjscssfile(JS_PATH "globalPara.js") ;
이 두 문장을 삭제하세요. 그렇지 않으면 오류가 보고됩니다.
(2009-06-04 업데이트)
IE6, IE7, IE8, Vista, Windows 7 및 Firefox와 호환되도록 ClientMentInfo 클래스를 변경했습니다.
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.