javascript 常用代码大全(超级收藏,强烈推荐)

来源:互联网 发布:vb如何打印带勾的框 编辑:程序博客网 时间:2024/06/02 02:53
打开模式对话框 
返回模式对话框的值 
全屏幕打开 IE 窗口 
脚本中中使用xml 
一、验证类 
1、数字验证内 
2、时间类 
3、表单类 
4、字符类 
5、浏览器类 
6、结合类 
二、功能类 
1、时间与相关控件类 
2、表单类 
3、打印类 
4、事件类 
5、网页设计类 
6、树型结构。 
7、无边框效果的制作 
8、连动下拉框技术 
9、文本排序 
10,画图类,含饼、柱、矢量贝滋曲线 
11,操纵客户端注册表类 
12,DIV层相关(拖拽、显示、隐藏、移动、增加) 
13,TABLAE相关(客户端动态增加行列,模拟进度条,滚动列表等) 
14,各种object classid=>相关类,如播放器,flash与脚本互动等 
16, 刷新/模拟无刷新 异步调用类(XMLHttp或iframe,frame) 




/* 
    随风Javascript函数库 
  请把经过测试的函数加入库 
*/ 


/******************** 
函数名称:StrLenthByByte 
函数功能:计算字符串的字节长度,即英文算一个,中文算两个字节 
函数参数:str,为需要计算长度的字符串 
********************/ 
function StrLenthByByte(str) 

var len; 
var i; 
len = 0; 
for (i=0;i<str.length;i++) 

if (str.charCodeAt(i)>255) len+=2; else len++; 

return len; 


/******************** 
函数名称:IsEmailAddress 
函数功能:检查Email邮件地址的合法性,合法返回true,反之,返回false 
函数参数:obj,需要检查的Email邮件地址 
********************/ 
function IsEmailAddress(obj) 

var pattern=/^[a-zA-Z0-9\-]+@[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3})$/; 
if(pattern.test(obj)) 

return true; 

else 

return false; 



/******************** 
函数名称:PopWindow 
函数功能:弹出新窗口 
函数参数:pageUrl,新窗口地址;WinWidth,窗口的宽;WinHeight,窗口的高 
********************/ 
function PopWindow(pageUrl,WinWidth,WinHeight) 

var popwin=window.open(pageUrl,"PopWin","scrollbars=yes,toolbar=no,location=no,directories=no,status=no,menubar=no,resizable=no,width="+WinWidth+",height="+WinHeight);
return false; 


/******************** 
函数名称:PopRemoteWindow 
函数功能:弹出可以控制父窗体的原程窗口 
函数参数:pageUrl,新窗口地址; 
调用方法:打开窗口:<a href="javascript:popRemoteWindow(url);">Open</a> _fcksavedurl=""javascript:popRemoteWindow(url);">Open</a>" 
          控制父窗体:opener.location=url;当然还可以有其他的控制 
********************/ 
function PopRemoteWindow(pageUrl) 

var remote=window.open(url,"RemoteWindow","scrollbars=yes,toolbar=yes,location=yes,directories=yes,status=yes,menubar=yes,resizable=yes");
if(remote.opener==null) 

remote.opener=window; 




/******************** 
函数名称:IsTelephone 
函数功能:固话,手机号码检查函数,合法返回true,反之,返回false 
函数参数:obj,待检查的号码 
检查规则: 
  (1)电话号码由数字、"("、")"和"-"构成 
  (2)电话号码为3到8位 
  (3)如果电话号码中包含有区号,那么区号为三位或四位 
  (4)区号用"("、")"或"-"和其他部分隔开 
  (5)移动电话号码为11或12位,如果为12位,那么第一位为0 
  (6)11位移动电话号码的第一位和第二位为"13" 
  (7)12位移动电话号码的第二位和第三位为"13" 
********************/ 
function IsTelephone(obj) 

var pattern=/(^[0-9]{3,4}\-[0-9]{3,8}$)|(^[0-9]{3,8}$)|(^\([0-9]{3,4}\)[0-9]{3,8}$)|(^0{0,1}13[0-9]{9}$)/; 
if(pattern.test(obj)) 

return true; 

else 

return false; 



/******************** 
函数名称:IsLegality 
函数功能:检查字符串的合法性,即是否包含" '字符,包含则返回false;反之返回true 
函数参数:obj,需要检测的字符串 
********************/ 
function IsLegality(obj) 

var intCount1=obj.indexOf("\"",0); 
var intCount2=obj.indexOf("\'",0); 
if(intCount1>0 || intCount2>0) 

return false; 

else 

return true; 



/******************** 
函数名称:IsNumber 
函数功能:检测字符串是否全为数字 
函数参数:str,需要检测的字符串 
********************/ 
function IsNumber(str) 

var number_chars = "1234567890"; 
var i; 
for (i=0;i<str.length;i++) 

if (number_chars.indexOf(str.charAt(i))==-1) return false; 

return true; 


/******************** 
函数名称:Trim 
函数功能:去除字符串两边的空格 
函数参数:str,需要处理的字符串 
********************/ 
function Trim(str) 

return str.replace(/(^\s*)|(\s*$)/g, ""); 


/******************** 
函数名称:LTrim 
函数功能:去除左边的空格 
函数参数:str,需要处理的字符串 
********************/ 
function LTrim(str) 

return str.replace(/(^\s*)/g, ""); 


/******************** 
函数名称:RTrim 
函数功能:去除右边的空格 
函数参数:str,需要处理的字符串 
********************/ 
function RTrim(str) 

return this.replace(/(\s*$)/g, ""); 


/******************** 
函数名称:IsNull 
函数功能:判断给定字符串是否为空 
函数参数:str,需要处理的字符串 
********************/ 
function IsNull(str) 

if(Trim(str)=="") 

return false; 

else 

return true; 



/******************** 
函数名称:CookieEnabled 
函数功能:判断cookie是否开启 
********************/ 
function CookieEnabled() 

return (navigator.cookieEnabled)? true : false; 



/*字符串替换方法*/ 
function StrReplace(srcString,findString,replaceString,start) 

//code 


/*客户端HTML编码*/ 
function HtmlEncode(str) 

//code 



/******************************************************************** 
** 
*函数功能:判断是否是闰年* 
*输入参数:数字字符串* 
*返回值:true,是闰年/false,其它* 
*调用函数:* 
** 
********************************************************************/ 
function IsLeapYear(iYear) 

if (iYear+"" == "undefined" || iYear+""== "null" || iYear+"" == "") 
return false; 

iYear = parseInt(iYear); 
varisValid= false; 

if((iYear % 4 == 0 && iYear % 100 != 0) || iYear % 400 == 0) 
isValid= true; 

return isValid;   

/******************************************************************** 
** 
*函数功能:取出指定年、月的最后一天* 
*输入参数:年份,月份* 
*返回值:某年某月的最后一天* 
*调用函数:IsLeapYear* 
** 
********************************************************************/ 
function GetLastDay(iYear,iMonth) 

iYear = parseInt(iYear); 
iMonth = parseInt(iMonth); 

variDay = 31; 

if((iMonth==4||iMonth==6||iMonth==9||iMonth==11)&&iDay == 31) 
iDay = 30; 

if(iMonth==2 ) 
if (IsLeapYear(iYear)) 
iDay = 29; 
else 
iDay = 28; 
return iDay;   

/******************************************************************** 
** 
*函数功能:去字符串的头空和尾空* 
*输入参数:字符串* 
*返回值:字符串/null如果输入字符串不正确* 
*调用函数:TrimLeft() 和 TrimRight()* 
** 
********************************************************************/ 
function Trim( str ) 

varresultStr =""; 

resultStr =TrimLeft(str); 
resultStr =TrimRight(resultStr); 

return resultStr; 


/******************************************************************** 
** 
*函数功能:去字符串的头空* 
*输入参数:字符串* 
*返回值:字符串/null如果输入字符串不正确* 
*调用函数:* 
** 
********************************************************************/ 
function TrimLeft( str ) 

varresultStr =""; 
vari =len= 0; 

if (str+"" == "undefined" || str ==null) 
return null; 

str+= ""; 

if (str.length == 0) 
resultStr =""; 
else 

len= str.length; 

while ((i <= len) && (str.charAt(i)== " ")) 
i++; 

resultStr =str.substring(i, len); 


return resultStr; 


/******************************************************************** 
** 
*函数功能:去字符串的尾空* 
*输入参数:字符串* 
*返回值:字符串/null如果输入字符串不正确* 
*调用函数:* 
** 
********************************************************************/ 
function TrimRight(str) 

varresultStr =""; 
vari =0; 

if (str+"" == "undefined" || str ==null) 
return null; 

str+= ""; 

if (str.length == 0) 
resultStr =""; 
else 

i =str.length - 1; 
while ((i >= 0)&& (str.charAt(i) == " ")) 
i--; 

resultStr =str.substring(0, i + 1); 


return resultStr; 


/******************************************************************** 
** 
*函数功能:判断输入的字符串是否为数字* 
*输入参数:输入的对象* 
*返回值:true-数字/false-非数字* 
*调用函数:* 
** 
********************************************************************/ 
function isNumber(objName) 

var strNumber = objName.value; 
var intNumber; 

if(Trim(strNumber) == "") 

return true; 


intNumber = parseInt(strNumber, 10); 
if (isNaN(intNumber)) 

alert("请输入数字."); 
objName.focus(); 
return false; 

return true; 


/******************************************************************** 
** 
*函数功能:判断输入的字符串是否为数字* 
*输入参数:输入的对象* 
*返回值:true-数字/false-非数字* 
*调用函数:* 
** 
********************************************************************/ 
function isFloat(objName) 

var strFloat = objName.value; 
var intFloat; 

if(Trim(strFloat) == "") 

return true; 


intFloat = parseFloat(strFloat); 
if (isNaN(intFloat)) 

alert("Please input a number."); 
objName.focus(); 
return false; 

return true; 





/******************************************************************** 
** 
*函数功能:判断输入的字符串是否为合法的时间* 
*输入参数:输入的字符串* 
*返回值:true-合法的时间/false-非法的时间* 
*调用函数:* 
** 
********************************************************************/ 
function checkDate(strDate) 

var strDateArray; 
var strDay; 
var strMonth; 
var strYear; 
var intday; 
var intMonth; 
var intYear; 
var strSeparator = "-"; 
var err = 0; 

strDateArray = strDate.split(strSeparator); 

if (strDateArray.length != 3) 

err = 1; 
return false; 

else 

strYear = strDateArray[0]; 
strMonth = strDateArray[1]; 
strDay = strDateArray[2]; 


intday = parseInt(strDay, 10); 
if (isNaN(intday)) 

err = 2; 
return false; 

intMonth = parseInt(strMonth, 10); 
if (isNaN(intMonth)) 

        err = 3; 
return false; 

intYear = parseInt(strYear, 10); 
if(strYear.length != 4) 

return false; 

if (isNaN(intYear)) 

err = 4; 
return false; 



if (intMonth>12 || intMonth<1) 

err = 5; 
return false; 


if ((intMonth == 1 || intMonth == 3 || intMonth == 5 || intMonth == 7 || intMonth == 8 || intMonth == 10 || intMonth == 12) && (intday > 31 || intday < 1)) 

err = 6; 
return false; 


if ((intMonth == 4 || intMonth == 6 || intMonth == 9 || intMonth == 11) && (intday > 30 || intday < 1)) 

err = 7; 
return false; 


if (intMonth == 2) 

if (intday < 1) 

err = 8; 
return false; 


if (LeapYear(intYear) == true) 

if (intday > 29) 

err = 9; 
return false; 


else 

if (intday > 28) 

err = 10; 
return false; 




return true; 


/******************************************************************** 
** 
*函数功能:判断是否为闰年* 
*输入参数:输入的年* 
*返回值:true-是/false-不是* 
*调用函数:* 
** 
********************************************************************/ 
function LeapYear(intYear) 

if (intYear % 100 == 0) 

if (intYear % 400 == 0) { return true; } 

else 

if ((intYear % 4) == 0) { return true; } 

return false; 


/******************************************************************** 
*函数功能:* 
********************************************************************/ 
function formDateCheck(year,month,day) 

var strY = Trim(year); 
var strM = Trim(month); 
var strD = Trim(day); 
var strDate = strY + "-" + strM + "-" + strD; 
if((strY + strM + strD) != "") 

if(!checkDate(strDate)) 

return false; 


return true; 


/******************************************************************** 
*函数功能:将form所有输入字段重置* 
********************************************************************/ 
function setFormReset(objForm) 

objForm.reset(); 

/******************************************************************** 
*函数功能:计算字符串的实际长度* 
********************************************************************/ 

function strlen(str) 

var len; 
var i; 
len = 0; 
for (i=0;i<str.length;i++) 

if (str.charCodeAt(i)>255) len+=2; else len++; 

return len; 

/******************************************************************** 
*函数功能:判断输入的字符串是不是中文* 
********************************************************************/ 


function isCharsInBag (s, bag) 

var i,c; 
for (i = 0; i < s.length; i++) 

c = s.charAt(i);//字符串s中的字符 
if (bag.indexOf(c) > -1) 
return c; 

return ""; 


function ischinese(s) 

var errorChar; 
var badChar = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789><,[]{}?/+=|\'\":;~!#$%()`"; 
errorChar = isCharsInBag( s, badChar) 
if (errorChar != "" ) 

//alert("请重新输入中文\n"); 
return false; 


return true; 


/******************************************************************** 
*函数功能:判断输入的字符串是不是英文* 
********************************************************************/ 


function isCharsInBagEn (s, bag) 

var i,c; 
for (i = 0; i < s.length; i++) 

c = s.charAt(i);//字符串s中的字符 
if (bag.indexOf(c) <0) 
return c; 

return ""; 


function isenglish(s) 

var errorChar; 
var badChar = " ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"; 
errorChar = isCharsInBagEn( s, badChar) 
if (errorChar != "" ) 

//alert("请重新输入英文\n"); 
return false; 


return true; 

function isnum(s) 

var errorChar; 
var badChar = "0123456789"; 
errorChar = isCharsInBagEn( s, badChar) 
if (errorChar != "" ) 

//alert("请重新输入英文\n"); 
return false; 


return true; 



自动显示TXT文本的内容 
把如下代码加入<body>区域中 
<script language=vbscript> 
Function bytes2BSTR(vIn) 
    strReturn = "" 
    For i = 1 To LenB(vIn) 
        ThisCharCode = AscB(MidB(vIn,i,1)) 
        If ThisCharCode < &H80 Then 
            strReturn = strReturn & Chr(ThisCharCode) 
        Else 
            NextCharCode = AscB(MidB(vIn,i+1,1)) 
            strReturn = strReturn & Chr(CLng(ThisCharCode) * &H100 + CInt(NextCharCode)) 
            i = i + 1 
        End If 
    Next 
    bytes2BSTR = strReturn 
End Function 
</script> 
<script language="Javascript"> 
var xmlUrl = new ActiveXObject('Microsoft.XMLHTTP'); 
xmlUrl.Open('GET','1.txt'); 
xmlUrl.Send(); 
setTimeout('alert(bytes2BSTR(xmlUrl.ResponseBody))',2000); 
</script> 

  


我也来帖几个: 
//detect client browse version 
function testNavigator(){ 
var message="系统检测到你的浏览器的版本比较低,建议你使用IE5.5以上的浏览器,否则有的功能可能不能正常使用.你可以到http://www.microsoft.com/china/免费获得IE的最新版本!"; 
var ua=navigator.userAgent; 
var ie=false; 
if(navigator.appName=="Microsoft Internet Explorer") 

ie=true; 

if(!ie){ 
alert(message); 
return; 

var IEversion=parseFloat(ua.substring(ua.indexOf("MSIE ")+5,ua.indexOf(";",ua.indexOf("MSIE ")))); 
if(IEversion< 5.5){ 
alert(message); 
return; 



//detect client browse version 
function testNavigator(){ 
var message="系统检测到你的浏览器的版本比较低,建议你使用IE5.5以上的浏览器,否则有的功能可能不能正常使用.你可以到http://www.microsoft.com/china/免费获得IE的最新版本!"; 
var ua=navigator.userAgent; 
var ie=false; 
if(navigator.appName=="Microsoft Internet Explorer") 

ie=true; 

if(!ie){ 
alert(message); 
return; 

var IEversion=parseFloat(ua.substring(ua.indexOf("MSIE ")+5,ua.indexOf(";",ua.indexOf("MSIE ")))); 
if(IEversion< 5.5){ 
alert(message); 
return; 



//ensure current window is the top window 
function checkTopWindow(){ 
if(window.top!=window && window.top!=null){ 
window.top.location=window.location; 



//force close window 
function closeWindow() 

var ua=navigator.userAgent; 
var ie=navigator.appName=="Microsoft Internet Explorer"?true:false; 
if(ie) 

var IEversion=parseFloat(ua.substring(ua.indexOf("MSIE ")+5,ua.indexOf(";",ua.indexOf("MSIE ")))); 
if(IEversion< 5.5) 

var str  = '<object id=noTipClose classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">' 
str += '<param name="Command" value="Close"></object>'; 
document.body.insertAdjacentHTML("beforeEnd", str); 
try 

document.all.noTipClose.Click(); 

catch(e){} 

else 

window.opener =null; 
window.close(); 


else 

window.close() 



//tirm string 
function trim(s) 

return s.replace( /^\s*/, "" ).replace( /\s*$/, "" ); 


//URI encode 
function encode(content){ 
return encodeURI(content); 


//URI decode 
function decode(content){ 
return decodeURI(content); 



这些都我的原创. 
打开calendar选择,可以限制是否可选择当前日期后的日期. 
//open a calendar window. 
function openCalender(ctlValue){ 
var url="/twms/component/calendar.html"; 
var param="dialogHeight:200px;dialogWidth:400px;center:yes;status:no;help:no;scroll:yes;resizable:yes;"; 
var result=window.showModalDialog(url,ctlValue.value,param); 
if(result!=null && result!="" && result!="undefined"){ 
ctlValue=result; 



calendar.html 
<html> 
<head> 
<title>选择日期:</title> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
<link href="/twms/css/common.css" type="text/css" rel="stylesheet"> 
<script language="Javascript"> 
var limit=true; 

function runNian(The_Year) 

if ((The_Year%400==0) || ((The_Year%4==0) && (The_Year%100!=0))) 
return true; 
else 
return false; 


function getWeekday(The_Year,The_Month) 

  
var Allday=0; 
if (The_Year>2000) 

  
for (i=2000 ;i<The_Year; i++) 

if (runNian(i)) 
Allday += 366; 
else 
Allday += 365; 


for (i=2; i<=The_Month; i++) 

switch (i) 

case 2 : 
if (runNian(The_Year)) 
Allday += 29; 
else 
Allday += 28; 
break; 
case 3 : Allday += 31; break; 
case 4 : Allday += 30; break; 
case 5 : Allday += 31; break; 
case 6 : Allday += 30; break; 
case 7 : Allday += 31; break; 
case 8 : Allday += 31; break; 
case 9 : Allday += 30; break; 
case 10 : Allday += 31; break; 
case 11 : Allday += 30; break; 
case 12 :  Allday += 31; break; 
    



  
switch (The_Month) 

case 1:return(Allday+6)%7; 

case 2 : 
if (runNian(The_Year)) 
return (Allday+1)%7; 
else 
return (Allday+2)%7; 

case 3:return(Allday+6)%7; 
case 4:return (Allday+7)%7; 
case 5:return(Allday+6)%7; 
case 6:return (Allday+7)%7; 
case 7:return(Allday+6)%7; 
case 8:return(Allday+6)%7; 
case 9:return (Allday+7)%7; 
case 10:return(Allday+6)%7; 
case 11:return (Allday+7)%7; 
case 12:return(Allday+6)%7; 




function chooseDay(The_Year,The_Month,The_Day) 

var Firstday; 
Firstday = getWeekday(The_Year,The_Month); 
showCalender(The_Year,The_Month,The_Day,Firstday); 


function nextMonth(The_Year,The_Month) 

if (The_Month==12) 
chooseDay(The_Year+1,1,0); 
else 
chooseDay(The_Year,The_Month+1,0); 


function prevMonth(The_Year,The_Month) 

if (The_Month==1) 
chooseDay(The_Year-1,12,0); 
else 
chooseDay(The_Year,The_Month-1,0); 


function prevYear(The_Year,The_Month) 

chooseDay(The_Year-1,The_Month,0); 


function nextYear(The_Year,The_Month) 

chooseDay(The_Year+1,The_Month,0); 


function showCalender(The_Year,The_Month,The_Day,Firstday) 

var Month_Day; 
var ShowMonth; 
var today= new Date(); 
//alert(today.getMonth()); 
  
switch (The_Month) 

case 1 : ShowMonth = "一月"; Month_Day = 31; break; 
case 2 : 
ShowMonth = "二月"; 
if (runNian(The_Year)) 
Month_Day = 29; 
else 
Month_Day = 28; 
break; 
case 3 : ShowMonth = "三月"; Month_Day = 31; break; 
case 4 : ShowMonth = "四月"; Month_Day = 30; break; 
case 5 : ShowMonth = "五月"; Month_Day = 31; break; 
case 6 : ShowMonth = "六月"; Month_Day = 30; break; 
case 7 : ShowMonth = "七月"; Month_Day = 31; break; 
case 8 : ShowMonth = "八月"; Month_Day = 31; break; 
case 9 : ShowMonth = "九月"; Month_Day = 30; break; 
case 10 : ShowMonth = "十月"; Month_Day = 31; break; 
case 11 : ShowMonth = "十一月"; Month_Day = 30; break; 
case 12 : ShowMonth = "十二月"; Month_Day = 31; break; 

  
var tableTagBegin="<Table cellpadding=0 cellspacing=0 border=1 bordercolor=#999999 width=95% align=center valign=top>"; 
var blankNextTd="<td width=0>&gt;&gt;</td>"; 
var blankPrevTd="<td width=0>&lt;&lt;</td>"; 
var blankDayTd="<td align=center bgcolor=#CCCCCC>&nbsp;</td>"; 
var nextYearTd="<td width=0 onclick=nextYear("+The_Year+","+The_Month+")  style='cursor:hand'>&gt;&gt;</td>"; 
var prevYearTd="<td width=0 onclick=prevYear("+The_Year+","+The_Month+")  style='cursor:hand'>&lt;&lt;</td>";
var nextMonthTd="<td width=0 onclick=nextMonth("+The_Year+","+The_Month+")  style='cursor:hand'>&gt;&gt;</td>"; 
var prevMonthTd="<td width=0 onclick=prevMonth("+The_Year+","+The_Month+")  style='cursor:hand'>&lt;&lt;</td>"; 
var valueTdTagBegin="<td width=100 align=center colspan=5>"; 

var weekTextTr="<Tr align=center bgcolor=#999999>"; 
weekTextTr+="<td><strong><font color=#0000CC>日</font></strong>"; 
weekTextTr+="<td><strong><font color=#0000CC>一</font></strong>"; 
weekTextTr+="<td><strong><font color=#0000CC>二</font></strong>"; 
weekTextTr+="<td><strong><font color=#0000CC>三</font></strong>"; 
weekTextTr+="<td><strong><font color=#0000CC>四</font></strong>"; 
weekTextTr+="<td><strong><font color=#0000CC>五</font></strong>"; 
weekTextTr+="<td><strong><font color=#0000CC>六</font></strong>"; 
weekTextTr+="</Tr>"; 

var text=tableTagBegin; 

text+="<Tr>"+prevYearTd+valueTdTagBegin+The_Year+"</td>"; 
if(limit && (The_Year>=today.getYear()) ){ 
text+=blankNextTd; 

else{ 
text+=nextYearTd; 

text+="</Tr>"; 

text+="<Tr>"+prevMonthTd+valueTdTagBegin+The_Month+"</td>"; 
if(limit && (The_Year>=today.getYear()) && (The_Month>=(today.getMonth()+1)) ){ 
text+=blankNextTd; 

else{ 
text+=nextMonthTd; 

text+="</Tr>"+weekTextTr; 

text+="<Tr>"; 

for (var i=1; i<=Firstday; i++){ 
text+=blankDayTd; 



for (var i=1; i<=Month_Day; i++) 

var bgColor=""; 
if ( (The_Year==today.getYear()) && (The_Month==today.getMonth()+1) && (i==today.getDate()) ) 

bgColor = "#FFCCCC"; 

else 

bgColor = "#CCCCCC"; 


if (The_Day==i) 

bgColor = "#FFFFCC"; 


if(limit && (The_Year>=today.getYear()) && (The_Month>=(today.getMonth()+1)) && (i>today.getDate())) 

text+="<td align=center bgcolor='#CCCCCC' >" + i + "</td>"; 

else 

text+="<td align=center bgcolor=" + bgColor + " style='cursor:hand' onclick=getSelectedDay(" + The_Year + "," + The_Month + "," + i + ")>" + i + "</td>"; 


Firstday = (Firstday + 1)%7; 
if ((Firstday==0) && (i!=Month_Day)) { 
text += "</Tr><Tr>"; 



if (Firstday!=0) 

for (var i=Firstday; i<7; i++) 

text+=blankDayTd; 


text+= "</Tr>"; 

  
text += "</Table>"; 
document.all.divContainer.innerHTML=text; 


function getSelectedDay(The_Year,The_Month,The_Day){ 
window.returnValue=The_Year + "-" + format(The_Month) + "-" + format(The_Day); 
//alert(window.returnValue); 
window.close(); 


function format(i){ 
if(i<10){ 
return "0"+i; 

else{ 
return i; 



function init(){ 
var args=window.dialogArguments.split("-"); 
//alert(args); 
var year=parseInt(args[0]); 
var month=parseInt(args[1]); 
var day=parseInt(args[2]); 
var firstDay=getWeekday(year,month); 
showCalender(year,month,day,firstDay); 

</script> 
</head> 
<body style="text-align:center"> 
<div id="divContainer"/> 
<script language=javascript> 
init(); 
</script> 
</body> 
</html> 



//parse the search string,then return a object. 
//object info: 
//--property: 
//----result:a array contained a group of name/value item.the item is nested class. 
//--method: 
//----getNamedItem(name):find item by name.if not exists,return null; 
//----appendItem(name,value):apppend an item into result tail; 
//----removetItem(name):remove item which contained in result and named that name. 
//----toString():override Object.toString();return a regular query string. 
function parseQueryString(search){ 
var ōbject=new Object(); 
object.getNamedItem=getNamedItem; 
object.appendItem=appendItem; 
object.removeItem=removeItem; 
object.toString=toString; 
object.result=new Array(); 

function parseItem(itemStr){ 
var arStr=itemStr.split("="); 
var ōbj=new Object(); 
obj.name=arStr[0]; 
obj.value=arStr[1]; 
obj.toString=toString; 
function toString(){ 
return obj.name+"="+obj.value; 

return obj; 


function appendItem(name,value){ 
var ōbj=parseItem(name+"="+value); 
object.result[object.result.length]=obj; 


function removeItem(name){ 
var j; 
for(j=0;j<object.result.length;j++){ 
if(object.result[j].name==name){ 
object.result.replice(j,1); 




function getNamedItem(name){ 
var j; 
for(j=0;j<object.result.length;j++){ 
if(object.result[j].name==name){ 
return object.result[j]; 



return null; 


function toString(){ 
var k; 
var str=""; 
for(k=0;k<object.result.length;k++){ 
str+=object.result[k].toString()+"&"; 


return str.substring(0,str.length-1); 



var items=search.split("&"); 
var i; 
for(i=0;i<items.length;i++){ 
object.result[i]=parseItem(items[i]); 


return object; 




关闭窗体[无须修改][共1步] 

====1、将以下代码加入HEML的<body></body>之间: 

<script language="Javascript"> 
function shutwin(){ 
window.close(); 
return;} 
</script> 
<a href="javascript:shutwin();">关闭本窗口</a> 



检测系统信息 

<script language="Javascript" type="text/javascript"> 
<!-- 
var newline = "\r\r" 
var now = new Date() 
var millinow=now.getTime()/1000 
var hours = now.getHours() 
var minutes = now.getMinutes() 
var seconds = now.getSeconds() 
var yourLocation="" 
now.setHours(now.getHours()+1) 
var min=60*now.getUTCHours()+now.getUTCMinutes() + now.getUTCSeconds()/60; 
var internetTime=(min/1.44) 
internetTime="Internet Time: @"+Math.floor(internetTime) 
var clock = "It's exactly "+hours+":"+minutes+":"+seconds+" hours"  
var browser = "You are using " + navigator.appName +" "+navigator.appVersion 
yourLocation="You are probably living in "+yourLocation 
var winwidth= window.screen.width 
var winheight= window.screen.height 
var screenresolution= "Screen resolution: "+window.screen.width+" x "+window.screen.height 
var lastdoc = "You came from: "+document.referrer 
var expDays = 30; 
var exp = new Date(); 
exp.setTime(exp.getTime() + (expDays*24*60*60*1000)); 
function Who(info){ 
var VisitorName = GetCookie('VisitorName') 
if (VisitorName == null) { 
VisitorName = "stranger"; 
SetCookie ('VisitorName', VisitorName, exp); 

return VisitorName; 

function When(info){ 
// When 
var rightNow = new Date() 
var WWHTime = 0; 
WWHTime = GetCookie('WWhenH') 
WWHTime = WWHTime * 1 
var lastHereFormatting = new Date(WWHTime);  // Date-i-fy that number 
var intLastVisit = (lastHereFormatting.getYear() * 10000)+(lastHereFormatting.getMonth() * 100) + 
lastHereFormatting.getDate() 
var lastHereInDateFormat = "" + lastHereFormatting;  // Gotta use substring functions 
var dayOfWeek = lastHereInDateFormat.substring(0,3) 
var dateMonth = lastHereInDateFormat.substring(4,11) 
var timeOfDay = lastHereInDateFormat.substring(11,16) 
var year = lastHereInDateFormat.substring(23,25) 
var WWHText = dayOfWeek + ", " + dateMonth + " at " + timeOfDay // display 
SetCookie ("WWhenH", rightNow.getTime(), exp) 
return WWHText; 

function Count(info){ 
var psj=0; 
// How many times 
var WWHCount = GetCookie('WWHCount') 
if (WWHCount == null) { 
WWHCount = 0; 

else{ 
WWHCount++; 

SetCookie ('WWHCount', WWHCount, exp); 
return WWHCount; 

function set(){ 
VisitorName = prompt("Who are you?"); 
SetCookie ('VisitorName', VisitorName, exp); 
SetCookie ('WWHCount', 0, exp); 
SetCookie ('WWhenH', 0, exp); 

function getCookieVal (offset) {  
var endstr = document.cookie.indexOf (";", offset);  
if (endstr == -1) 
endstr = document.cookie.length; 
return unescape(document.cookie.substring(offset, endstr)); 

function GetCookie (name) { 
var arg = name + "=";  
var alen = arg.length; 
var clen = document.cookie.length;  
var i = 0; 
while (i < clen) { 
var j = i + alen; 
if (document.cookie.substring(i, j) == arg) 
return getCookieVal (j); 
i = document.cookie.indexOf(" ", i) + 1; 
if (i == 0) break; 

return null; 

function SetCookie (name, value) { 
var argv = SetCookie.arguments; 
var argc = SetCookie.arguments.length;  
var expires = (argc > 2) ? argv[2] : null; 
var path = (argc > 3) ? argv[3] : null;  
var domain = (argc > 4) ? argv[4] : null;  
var secure = (argc > 5) ? argv[5] : false; 
document.cookie = name + "=" + escape (value) + 
((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + 
((path == null) ? "" : ("; path=" + path)) +  
((domain == null) ? "" : ("; domain=" + domain)) + 
((secure == true) ? "; secure" : ""); 

function DeleteCookie (name) { 
var exp = new Date();  
exp.setTime (exp.getTime() - 1);  
// This cookie is history 
var cval = GetCookie (name);  
document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString(); 

var countvisits="You've been here " + Count() + " time(s). Last time was " + When() +"." 
if (navigator.javaEnabled()) { 
var javaenabled="Your browser is able to run java-applets"; 

else { 
var javaenabled="Your browser is not able to run java-applets"; 

function showAlert() { 
var later = new Date() 
var millilater=later.getTime()/1000 
var loadTime=(Math.floor((millilater-millinow)*100))/100 
var loadTimeResult= "It took you "+loadTime+" seconds to load this page" 
var babiesborn=Math.ceil(loadTime*4.18) 
var babiesbornresult="While this page was loading "+babiesborn+" babies have been born" 
if (babiesborn==1){babiesbornresult="While this page was loading "+babiesborn+" baby has been born"} 
alert 
(newline+newline+browser+newline+clock+newline+loadTimeResult+newline+internetTime+newline+screenresolution+newline+lastdoc+newline+countvisits+newline+javaenabled+newline+babiesbornresult+newline+newline)

// --></script> 
<body onLoad="showAlert()"> 


密码保护: 

将以下代码加入HEML的<body></body>之间: 
原创粉丝点击