//js常用函数 更新2008-8-16 取自网络
function $(id) {
return document.getElementById(id);
}
/**************
함수: getElementsByClassName
사용법:
문서에서 "info-links"인 하이퍼링크 클래스를 가져옵니다.
getElementsByClassName(document, "a", "info-links");
col인 컨테이너에서 p 클래스를 가져옵니다.
getElementsByClassName(document.getElementById("container"), "p" , "col");
문서에서 "click-me"인 모든 클래스를 가져옵니다.
getElementsByClassName(document, "*", "click-me")
배열 반환
*******************/
function getElementsByClassName(oElm, strTagName, strClassName){
var arrElements = (strTagName == "*" && oElm. 모두)? oElm.all : oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/-/g, "-");
var oRegExp = new RegExp("(^|s)" strClassName "(s|$)");
var oElement;
for(var i=0; i
if(oRegExp.test(oElement.className))
arrReturnElements.push(oElement);
}
반환(arrReturnElements)
}
/**************
replaceAll:
문자열의 문자를 바꿉니다.
사용법:
yourstring.replaceAll("바꿀 문자", "무엇으로 바꿀지")
예:
"cssrain".replaceAll("s", "a"); 🎜>" cs sr ai n".replaceAll(" ", "")
****************;*/
String.prototype.replaceAll = 함수(AFindText,ARepText){
raRegExp = new RegExp(AFindText,"g");
return this.replace(raRegExp,ARepText);
}
/**************
* 문자열 앞뒤 공백 처리.
* 중간에 있는 공백을 교체하고 싶을 경우에는 replaceAll 메소드를 이용해주세요.
* 사용법:
* " cssrain ".trim()
****************;*/
String.prototype.trim=function()
{
return this.replace(/(^s* )|(s*$)/g,"");//将字符串前后空格,용공자符串替代。
}
/**************
* 문자열의 실제 길이를 계산합니다.
//문자열에 길이 속성이 있지만 영문자를 구분할 수 없습니다.
//한자를 계산합니다. 및 전각 문자. 다만, 데이터 저장시 한자와 전자는 모두 2바이트로 저장됩니다.
//모두 추가 처리가 필요합니다. 문자열의 실제 길이를 반환하는 함수를 직접 작성했습니다.
사용법:
*******************/
String.prototype.codeLength=function(){
var len=0;
if(this==null||this.length==0)
return 0;
var str=this.replace(/(^s*)|(s*$)/g,"");//去掉空格
for(i=0;i
len ;
그밖에
len =2;
렌을 돌려주세요;
}
//JS获取字符串的实际长島, 用来代替 String의 길이 특성
String.prototype.length = function(){
return this.replace (/[u4e00-u9fa5] /g,"**").length;
}
/**************
//HTML 필터링
//댓글을 달 때 사용자가 악성 스크립트를 제출하는 것을 방지하려면 먼저 HTML 태그를 필터링하고 큰따옴표와 작은따옴표를 필터링할 수 있습니다. . 따옴표, &, 기호 <, 기호
사용법:
*********************/
String.prototype.filterHtml=function(){
return this.replace(/&/g,"&").replace (//g,">").replace(/"/g,""").replace(/'/g,"'");
}
/**************
형식:
포맷 시간입니다.
사용법:
yourdate.format("날짜 형식");
예:
obj0 = new Date("Sun May 04 2008").format("yyyy-MM-dd" ) ;
obj1 = new Date().format("yyyy-MM-dd hh:mm:ss")
obj2 = new Date().format("yyyy-MM-dd"); >obj3 = new Date().format("yyyy/MM/dd");
obj4 = new Date().format("MM/dd/yyyy")
****** * *********/
Date.prototype.format = function(format)
{
var o = {
"M " : this.getMonth() 1, //월
"d " : this.getDate(), //일
"h " : this.getHours(), //시간
"m " : this.getMinutes(), //분
"s " : this.getSeconds(), //초
"q " : Math.floor((this.getMonth() 3)/3), / /quarter
"S" : this.getMilliseconds() //밀리초
}
if(/(y )/.test(format)) format=format.replace(RegExp.$1,
(this.getFullYear() "").substr(4 - RegExp.$1.length));
for(var k in o)if(new RegExp("(" k ")").test(format))
format = format.replace(RegExp.$1,
RegExp.$1.length ==1 ? o[k] :
("00" o[k]).substr(("" o[k]).length));
반환 형식;
}
/**************
형식:
형식 번호.
예:
var n = format_number( 123456.45656 , 2 ) // .toFixed(2) 또한 It 구현할 수 있지만 FF와 호환되지 않습니다.
alert(n)
*****************/
함수 format_number(str,digit)
{
if(isNaN(str))
{
alert("您传入的值不是数字! ");
0을 반환합니다.
}
else if(Math.round(digit)!=digit)
{
alert("您输入的小数位数不是整数!");
0을 반환합니다.
}
else
return Math.round(parseFloat(str)*Math.pow(10,digit))/Math.pow(10,digit);
}
/**********양식 작업*********/
/**************
* 라디오 버튼의 선택된 값을 가져옵니다.
* 사용법:
*
*
*
*
*********************/
function getRadioValue(radioName){
var obj=document.getElementsByName (라디오이름);
for(var i=0;i
return obj[i].value;
}
}
}
/**************
* 체크박스 모두 선택/선택 취소/반전
* 사용법:
************ **/
function checkAll(form, sel) {
for (i = 0, n = form. elements.length; i < n; i ) {
if(form.elements[i].type == "checkbox") {
if(form.elements[i].checked == true)
form.elements[i].checked = (sel == "all" ? true : false);
} else {
form.elements[i].checked = (sel == "none" ? false : true);
}
}
}
}
/**************
* 체크박스가 선택되어 있는지 확인하세요.
* 아무것도 선택하지 않으면 false가 반환됩니다.
* 사용법:
*******************/
function SCheckBox(_formName,_checkboxName){
var selflag = {'checked':0,'cvalues':[]};
_scheckbox = eval('document.' _formName '.' _checkboxName);
if(_scheckbox){
if(eval(_scheckbox.length)){
for(i=0;i<_scheckbox.length;i ){
if(_scheckbox[i].checked ){
selflag.checked ;
selflag.cvalues.push(_scheckbox[i].value);
}
};
}else if(_scheckbox.checked){
selflag.checked ;
selflag.cvalues.push(_scheckbox.value);
}
if(selflag.checked){
return selflag;
}
}
false를 반환합니다.
}
//如果控件值=原来值则清空
functionclearInput(input){
if(input.value == input.defaultValue){
input.value = "";
}
}
/*****************양식 작업이 종료됩니다*************/
/**************/
//收藏到书签.(兼容IE와 FF)。
function addBookmark(title,url) {
if (window.sidebar) {
window.sidebar.addPanel(title, url,"");
} else if( document.all ) {
window.external.AddFavorite( url, title);
} else if( window.opera && window.print ) {
return true;
}
}
/************
기능: 텍스트 상자가 포커스 작업을 가져오거나 잃습니다.
텍스트 상자에서 검색할 때 이 방법이 자주 나타납니다.
텍스트에 "검색"이 표시된 후 사용자가 해당 텍스트를 마우스로 클릭하면
텍스트 상자의 내용이 지워집니다. 사용자가 내용을 입력하지 않으면 텍스트 값이 복원됩니다.
입력하면 사용자가 입력한 것으로 표시됩니다.
사용법:
*********************
函数 : 文本框得到与失去焦点 操작품.
这个方法经常常常常文本框搜索的时候出现。
文本里显示 “ 搜索 ”,然后当用户鼠标点击此文本,
文本框内填写,内容,那么文本的值又复原。
如果填写了,就显示用户填写的。
사용법:
************
기능: 마우스 클릭이 왼쪽인지 오른쪽인지 확인하는 데 사용됩니다. (IE 및 ff와 호환)
사용법:
onmousedown="mouse_keycode(event)"
*******************/
function clearTxt(id,txt) {
if (document.getElementById(id).value == txt)
document.getElementById(id).value="" ;
반환 ;
}
function fillTxt(id,txt) {
if ( document.getElementById(id).value == "" )
document.getElementById(id).value=txt;
반환 ;
}
/************
기능: 개체의 onclick 이벤트를 트리거합니다. (IE 및 FF와 호환)
사용법:
***********************
函数 : 用来判断鼠标按的是左键还是右键。(兼容IE와ff)
사용법:
onmousedown="mouse_keycode(event)"
<🎝>***/
function mouse_keycode(event){
var event=event||window.event;
var nav=window.navigator.userAgent;
if (nav.indexOf("MSIE")>=1) //如果浏览器为IE.解释:因为 document.all 是 IE 的特有属性,所以通常用这个方法来判断客户端是否是IE浏览器,document.all?1:0;
{
if(event.button==1){alert("左键")}
else if(event.button==2){alert("右键")}
}
else if(nav.indexOf("Firefox")>=1) ////如果浏览器为Firefox
{
if(event.button==0){alert("左键");}
else if(event.button==2){alert("右键");}
}
else{ //如果浏览器为其他
alert("other" );
}
}
/***
函数 :触发某个对象的onclick事件。(兼容IE와FF)
사용법: ***/ function handerToClick(objid){ var obj=document.getElementById(objid); if(document.all){ obj.fireEvent("onclick"); }else{ var e=document.createEvent('MouseEvent'); e.initEvent('클릭',false,false); obj.dispatchEvent(e); } } /*** 实现按回车提交 ******************/
function QuickPost(evt,form){
var evt = window.event?window.event:evt
if; (evt.keyCode == 13){
document.getElementById(form).submit()
}
}
/***********
숫자인지 확인하세요
*************/
function checkIsInteger( str)
{
//비어 있으면 검사가 통과됩니다.
if(str == "")
return true
if(/^(- ?)(d ) $/.test(str))
true를 반환합니다.
else
false를 반환합니다.
}