发新话题
打印

常用js代码大全

常用js代码大全

一、打开页面自动最大化。

<script>
self.moveTo(0,0)
self.resizeTo(screen.availWidth,screen.availHeight)
</script>

二、显示现在时间

<script language=vbscript>document.write now</script>

三、过长文本的显示限制

<DIV STYLE="width: 120px; height: 50px; border: 1px solid blue;

            overflow: hidden; text-overflow:ellipsis"
>

<NOBR>就是比如有一行文字很长表格内一行显示不下</NOBR>

</DIV>

四、文本链接渐隐渐显

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<HTML>

<HEAD>

<TITLE> New Document </TITLE>

<META NAME="Generator" CONTENT="EditPlus">

<META NAME="Author" CONTENT="">

<META NAME="Keywords" CONTENT="">

<META NAME="Description" CONTENT="">

</HEAD>



<BODY>

<script language="javascript" type="text/javascript">





startColor = "#671700"; // 定义链接颜色

endColor = "#D8D1C5";  // 定义要渐变到最后的颜色



stepIn = 17;

stepOut = 23;



/*

定义是否让所有的文本链接自动渐变,true为是,false为否

*/

autoFade = true;  



/*

在这里定义css样式里的类class:fade,如果为true,那么你要将要渐变的链接上加上此fade样式

*/

sloppyClass = false;



hexa = new makearray(16);

for(var i = 0; i < 10; i++)

    hexa[i] = i;

hexa[10]="a"; hexa[11]="b"; hexa[12]="c";

hexa[13]="d"; hexa[14]="e"; hexa[15]="f";



document.onmouseover = domouseover;

document.onmouseout = domouseout;



startColor = dehexize(startColor.toLowerCase());

endColor = dehexize(endColor.toLowerCase());



var fadeId = new Array();



function dehexize(Color){

var colorArr = new makearray(3);

for (i=1; i<7; i++){

  for (j=0; j<16; j++){

   if (Color.charAt(i) == hexa[j]){

    if (i%2 !=0)

     colorArr[Math.floor((i-1)/2)]=eval(j)*16;

    else

     colorArr[Math.floor((i-1)/2)]+=eval(j);

   }

  }

}

return colorArr;

}



function domouseover() {

  if(document.all){

   var srcElement = event.srcElement;

   if ((srcElement.tagName == "A" && autoFade) || srcElement.className == "fade" || (sloppyClass && srcElement.className.indexOf("fade") != -1))

        fade(startColor,endColor,srcElement.uniqueID,stepIn);      

   }

}



function domouseout() {

  if (document.all){

   var srcElement = event.srcElement;

    if ((srcElement.tagName == "A" && autoFade) || srcElement.className == "fade" || (sloppyClass && srcElement.className.indexOf("fade") != -1))

        fade(endColor,startColor,srcElement.uniqueID,stepOut);

    }

}



function makearray(n) {

    this.length = n;

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

        this[i] = 0;

    return this;

}



function hex(i) {

    if (i < 0)

        return "00";

    else if (i > 255)

        return "ff";

    else

       return "" + hexa[Math.floor(i/16)] + hexa[i%16];}



function setColor(r, g, b, element) {

      var hr = hex(r); var hg = hex(g); var hb = hex(b);

      element.style.color = "#"+hr+hg+hb;

}



function fade(s,e, element,step){

var sr = s[0]; var sg = s[1]; var sb = s[2];

var er = e[0]; var eg = e[1]; var eb = e[2];



if (fadeId[0] != null && fade[0] != element){

  setColor(sr,sg,sb,eval(fadeId[0]));

  var i = 1;

  while(i < fadeId.length){

   clearTimeout(fadeId[i]);

   i++;

   }

  }

  

    for(var i = 0; i <= step; i++) {

     fadeId[i+1] = setTimeout("setColor(Math.floor(" +sr+ " *(( " +step+ " - " +i+ " )/ " +step+ " ) + " +er+ " * (" +i+ "/" +

   step+ ")),Math.floor(" +sg+ " * (( " +step+ " - " +i+ " )/ " +step+ " ) + " +eg+ " * (" +i+ "/" +step+

   ")),Math.floor(" +sb+ " * ((" +step+ "-" +i+ ")/" +step+ ") + " +eb+ " * (" +i+ "/" +step+ ")),"+element+");",i*step);

  }

fadeId[0] = element;

}



</script>



</BODY>

</HTML>

<A HREF="">让你的文本链接渐隐渐显</A>



五、静态页面的分页

<!doctype html public "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>

<html xmlns="http://www.w3.org/1999/xhtml";>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />

<title> JavaScript: showPages v1.0 [by Lapuasi.com]</title>

<script language="JavaScript">

<!--

/*



showPages v1.1

=================================



Infomation

----------------------

Author : Lapuasi

E-Mail : lapuasi@gmail.com

Web : http://www.lapuasi.com

Date : 2005-11-17





Example

----------------------

var pg = new showPages('pg');

pg.pageCount = 12; //定义总页数(必要)

pg.argName = 'p';    //定义参数名(可选,缺省为page)

pg.printHtml();        //显示页数





Supported in Internet Explorer, Mozilla Firefox

*/



function showPages(name) { //初始化属性

       this.name = name;      //对象名称

       this.page = 1;         //当前页数

       this.pageCount = 1;    //总页数

       this.argName = 'page'; //参数名

       this.showTimes = 1;    //打印次数

}



showPages.prototype.getPage = function(){ //丛url获得当前页数,如果变量重复只获取最后一个

       var args = location.search;

       var reg = new RegExp('[\?&]?' + this.argName + '=([^&]*)[&$]?', 'gi');

       var chk = args.match(reg);

       this.page = RegExp.$1;

}

showPages.prototype.checkPages = function(){ //进行当前页数和总页数的验证

       if (isNaN(parseInt(this.page))) this.page = 1;

       if (isNaN(parseInt(this.pageCount))) this.pageCount = 1;

       if (this.page < 1) this.page = 1;

       if (this.pageCount < 1) this.pageCount = 1;

       if (this.page > this.pageCount) this.page = this.pageCount;

       this.page = parseInt(this.page);

       this.pageCount = parseInt(this.pageCount);

}

showPages.prototype.createHtml = function(mode){ //生成html代码

       var strHtml = '', prevPage = this.page - 1, nextPage = this.page + 1;

       if (mode == '' || typeof(mode) == 'undefined') mode = 0;

       switch (mode) {

              case 0 : //模式1 (页数,首页,前页,后页,尾页)

                     strHtml += '<span class="count">Pages: ' + this.page + ' / ' + this.pageCount + '</span>';

                     strHtml += '<span class="number">';

                     if (prevPage < 1) {

                            strHtml += '<span title="First Page">«</span>';

                            strHtml += '<span title="Prev Page">‹</span>';

                     } else {

                            strHtml += '<span title="First Page"><a href="javascript:' + this.name + '.toPage(1);">«</a></span>';

                            strHtml += '<span title="Prev Page"><a href="javascript:' + this.name + '.toPage(' + prevPage + ');">‹</a></span>';

                     }

                     for (var i = 1; i <= this.pageCount; i++) {

                            if (i > 0) {

                                   if (i == this.page) {

                                          strHtml += '<span title="Page ' + i + '">[' + i + ']</span>';

                                   } else {

                                          strHtml += '<span title="Page ' + i + '"><a href="javascript:' + this.name + '.toPage(' + i + ');">[' + i + ']</a></span>';

                                   }

                            }

                     }

                     if (nextPage > this.pageCount) {

                            strHtml += '<span title="Next Page">›</span>';

                            strHtml += '<span title="Last Page">»</span>';

                     } else {

                            strHtml += '<span title="Next Page"><a href="javascript:' + this.name + '.toPage(' + nextPage + ');">›</a></span>';

                            strHtml += '<span title="Last Page"><a href="javascript:' + this.name + '.toPage(' + this.pageCount + ');">»</a></span>';

                     }

                     strHtml += '</span><br />';

                     break;

              case 1 : //模式1 (10页缩略,首页,前页,后页,尾页)

                     strHtml += '<span class="count">Pages: ' + this.page + ' / ' + this.pageCount + '</span>';

                     strHtml += '<span class="number">';

                     if (prevPage < 1) {

                            strHtml += '<span title="First Page">«</span>';

                            strHtml += '<span title="Prev Page">‹</span>';

                     } else {

                            strHtml += '<span title="First Page"><a href="javascript:' + this.name + '.toPage(1);">«</a></span>';

                            strHtml += '<span title="Prev Page"><a href="javascript:' + this.name + '.toPage(' + prevPage + ');">‹</a></span>';

                     }

                     if (this.page % 10 ==0) {

                            var startPage = this.page - 9;

                     } else {

                            var startPage = this.page - this.page % 10 + 1;

                     }

                     if (startPage > 10) strHtml += '<span title="Prev 10 Pages"><a href="javascript:' + this.name + '.toPage(' + (startPage - 1) + ');">...</a></span>';

                     for (var i = startPage; i < startPage + 10; i++) {

                            if (i > this.pageCount) break;

                            if (i == this.page) {

                                   strHtml += '<span title="Page ' + i + '">[' + i + ']</span>';

                            } else {

                                   strHtml += '<span title="Page ' + i + '"><a href="javascript:' + this.name + '.toPage(' + i + ');">[' + i + ']</a></span>';

                            }

                     }

                     if (this.pageCount >= startPage + 10) strHtml += '<span title="Next 10 Pages"><a href="javascript:' + this.name + '.toPage(' + (startPage + 10) + ');">...</a></span>';

                     if (nextPage > this.pageCount) {

                            strHtml += '<span title="Next Page">›</span>';

                            strHtml += '<span title="Last Page">»</span>';

                     } else {

                            strHtml += '<span title="Next Page"><a href="javascript:' + this.name + '.toPage(' + nextPage + ');">›</a></span>';

                            strHtml += '<span title="Last Page"><a href="javascript:' + this.name + '.toPage(' + this.pageCount + ');">»</a></span>';

                     }

                     strHtml += '</span><br />';

                     break;

              case 2 : //模式2 (前后缩略,页数,首页,前页,后页,尾页)

                     strHtml += '<span class="count">Pages: ' + this.page + ' / ' + this.pageCount + '</span>';

                     strHtml += '<span class="number">';

                     if (prevPage < 1) {

                            strHtml += '<span title="First Page">«</span>';

                            strHtml += '<span title="Prev Page">‹</span>';

                     } else {

                            strHtml += '<span title="First Page"><a href="javascript:' + this.name + '.toPage(1);">«</a></span>';

                            strHtml += '<span title="Prev Page"><a href="javascript:' + this.name + '.toPage(' + prevPage + ');">‹</a></span>';

                     }

                     if (this.page != 1) strHtml += '<span title="Page 1"><a href="javascript:' + this.name + '.toPage(1);">[1]</a></span>';

                     if (this.page >= 5) strHtml += '<span>...</span>';

                     if (this.pageCount > this.page + 2) {

                            var endPage = this.page + 2;

                     } else {

                            var endPage = this.pageCount;

                     }

                     for (var i = this.page - 2; i <= endPage; i++) {

                            if (i > 0) {

                                   if (i == this.page) {

                                          strHtml += '<span title="Page ' + i + '">[' + i + ']</span>';

                                   } else {

                                          if (i != 1 && i != this.pageCount) {

                                                 strHtml += '<span title="Page ' + i + '"><a href="javascript:' + this.name + '.toPage(' + i + ');">[' + i + ']</a></span>';

                                          }

                                   }

                            }

                     }

                     if (this.page + 3 < this.pageCount) strHtml += '<span>...</span>';

                     if (this.page != this.pageCount) strHtml += '<span title="Page ' + this.pageCount + '"><a href="javascript:' + this.name + '.toPage(' + this.pageCount + ');">[' + this.pageCount + ']</a></span>';

                     if (nextPage > this.pageCount) {

                            strHtml += '<span title="Next Page">›</span>';

                            strHtml += '<span title="Last Page">»</span>';

                     } else {

                            strHtml += '<span title="Next Page"><a href="javascript:' + this.name + '.toPage(' + nextPage + ');">›</a></span>';

                            strHtml += '<span title="Last Page"><a href="javascript:' + this.name + '.toPage(' + this.pageCount + ');">»</a></span>';

                     }

                     strHtml += '</span><br />';

                     break;

              case 3 : //模式3 (箭头样式,首页,前页,后页,尾页) (only IE)

                     strHtml += '<span class="count">Pages: ' + this.page + ' / ' + this.pageCount + '</span>';

                     strHtml += '<span class="arrow">';

                     if (prevPage < 1) {

                            strHtml += '<span title="First Page">9</span>';

                            strHtml += '<span title="Prev Page">7</span>';

                     } else {

                            strHtml += '<span title="First Page"><a href="javascript:' + this.name + '.toPage(1);">9</a></span>';

                            strHtml += '<span title="Prev Page"><a href="javascript:' + this.name + '.toPage(' + prevPage + ');">7</a></span>';

                     }

                     if (nextPage > this.pageCount) {

                            strHtml += '<span title="Next Page">8</span>';

                            strHtml += '<span title="Last Page">:</span>';

                     } else {

                            strHtml += '<span title="Next Page"><a href="javascript:' + this.name + '.toPage(' + nextPage + ');">8</a></span>';

                            strHtml += '<span title="Last Page"><a href="javascript:' + this.name + '.toPage(' + this.pageCount + ');">:</a></span>';

                     }

                     strHtml += '</span><br />';

                     break;

              case 4 : //模式4 (下拉框)

                     if (this.pageCount < 1) {

                            strHtml += '<select name="toPage" disabled>';

                            strHtml += '<option value="0">No Pages</option>';

                     } else {

                            var chkSelect;

                            strHtml += '<select name="toPage" >';

                            for (var i = 1; i <= this.pageCount; i++) {

                                   if (this.page == i) chkSelect=' selected="selected"';

                                   else chkSelect='';

                                   strHtml += '<option value="' + i + '"' + chkSelect + '>Pages: ' + i + ' / ' + this.pageCount + '</option>';

                            }

                     }

                     strHtml += '</select>';

                     break;

              case 5 : //模式5 (输入框)

                     strHtml += '<span class="input">';

                     if (this.pageCount < 1) {

                            strHtml += '<input type="text" name="toPage" value="No Pages" class="itext" disabled="disabled">';

                            strHtml += '<input type="button" name="go" value="GO" class="ibutton" disabled="disabled"></option>';

                     } else {

                            strHtml += '<input type="text" value="Input Page:" class="ititle" readonly="readonly">';

                            strHtml += '<input type="text" id="pageInput' + this.showTimes + '" value="' + this.page + '" class="itext" title="Input page"  >';

                            strHtml += '<input type="text" value=" / ' + this.pageCount + '" class="icount" readonly="readonly">';

                            strHtml += '<input type="button" name="go" value="GO" class="ibutton" ></option>';

                     }

                     strHtml += '</span>';

                     break;

              default :

                     strHtml = 'Javascript showPage Error: not find mode ' + mode;

                     break;

       }

       return strHtml;

}

showPages.prototype.createUrl = function (page) { //生成页面跳转url

       if (isNaN(parseInt(page))) page = 1;

       if (page < 1) page = 1;

       if (page > this.pageCount) page = this.pageCount;

       var url = location.protocol + '//' + location.host + location.pathname;

       var args = location.search;

       var reg = new RegExp('([\?&]?)' + this.argName + '=[^&]*[&$]?', 'gi');

       args = args.replace(reg,'$1');

       if (args == '' || args == null) {

              args += '?' + this.argName + '=' + page;

       } else if (args.substr(args.length - 1,1) == '?' || args.substr(args.length - 1,1) == '&') {

                     args += this.argName + '=' + page;

       } else {

                     args += '&' + this.argName + '=' + page;

       }

       return url + args;

}

showPages.prototype.toPage = function(page){ //页面跳转

       var turnTo = 1;

       if (typeof(page) == 'object') {

              turnTo = page.options[page.selectedIndex].value;

       } else {

              turnTo = page;

       }

       self.location.href = this.createUrl(turnTo);

}

showPages.prototype.printHtml = function(mode){ //显示html代码

       this.getPage();

       this.checkPages();

       this.showTimes += 1;

       document.write('<div id="pages_' + this.name + '_' + this.showTimes + '" class="pages"></div>');

       document.getElementById('pages_' + this.name + '_' + this.showTimes).innerHTML = this.createHtml(mode);

      

}

showPages.prototype.formatInputPage = function(e){ //限定输入页数格式

       var ie = navigator.appName=="Microsoft Internet Explorer"?true:false;

       if(!ie) var key = e.which;

       else var key = event.keyCode;

       if (key == 8 || key == 46 || (key >= 48 && key <= 57)) return true;

       return false;

}

//-->


</script>

<style>

/* Pages Main Tyle */

.pages {

       color: #000000;

       cursor: default;

       font-size: 10px;

       font-family: Tahoma, Verdana;

       padding: 3px 0px 3px 0px;

}

.pages .count, .pages .number, .pages .arrow {

       color: #000000;

       font-size: 10px;

       background-color: #F7F7F7;

       border: 1px solid #CCCCCC;

}

/* Page and PageCount Style */

.pages .count {

       font-weight: bold;

       border-right: none;

       padding: 2px 10px 1px 10px;

}

/* Mode 0,1,2 Style (Number) */

.pages .number {

       font-weight: normal;

       padding: 2px 10px 1px 10px;

}

.pages .number a, .pages .number span {

       font-size: 10px;

}

.pages .number span {

       color: #999999;

       margin: 0px 3px 0px 3px;

}

.pages .number a {

       color: #000000;

       text-decoration: none;

}

.pages .number a:hover {

       color: #0000ff;

}

/* Mode 3 Style (Arrow) */

.pages .arrow {

       font-weight: normal;

       padding: 0px 5px 0px 5px;

}

.pages .arrow a, .pages .arrow span {

       font-size: 10px;

       font-family: Webdings;

}

.pages .arrow span {

       color: #999999;

       margin: 0px 5px 0px 5px;

}

.pages .arrow a {

       color: #000000;

       text-decoration: none;

}

.pages .arrow a:hover {

       color: #0000ff;

}

/* Mode 4 Style (Select) */

.pages select, .pages input {

       color: #000000;

       font-size: 10px;

       font-family: Tahoma, Verdana;

}

/* Mode 5 Style (Input) */

.pages .input input.ititle, .pages .input input.itext, .pages .input input.icount {

       color: #666666;

       font-weight: bold;

       background-color: #F7F7F7;

       border: 1px solid #CCCCCC;

}

.pages .input input.ititle {

       width: 70px;

       text-align: right;

       border-right: none;

}

.pages .input input.itext {

       width: 25px;

       color: #000000;

       text-align: right;

       border-left: none;

       border-right: none;

}

.pages .input input.icount {

       width: 35px;

       text-align: left;

       border-left: none;

}

.pages .input input.ibutton {

       height: 17px;

       color: #FFFFFF;

       font-weight: bold;

       font-family: Verdana;

       background-color: #999999;

       border: 1px solid #666666;

       padding: 0px 0px 2px 1px;

       margin-left: 2px;

       cursor: hand;

}



/* body */

body {

       font-size: 12px;

}

</style>

</head>



<body>

<script language="JavaScript">

<!--

var pg = new showPages('pg');

pg.pageCount =12;  // 定义总页数(必要)

//pg.argName = 'p';  // 定义参数名(可选,默认为page)



document.write('<br>Show Times: ' + pg.showTimes + ', Mood Default');

pg.printHtml();

document.write('<br>Show Times: ' + pg.showTimes + ', Mood 0');

pg.printHtml(0);

document.write('<br>Show Times: ' + pg.showTimes + ', Mood 1');

pg.printHtml(1);

document.write('<br>Show Times: ' + pg.showTimes + ', Mood 2');

pg.printHtml(2);

document.write('<br>Show Times: ' + pg.showTimes + ', Mood 3 (only IE)');

pg.printHtml(3);

document.write('<br>Show Times: ' + pg.showTimes + ', Mood 4');

pg.printHtml(4);

document.write('<br>Show Times: ' + pg.showTimes + ', Mood 5');

pg.printHtml(5);

//-->


</script>

</body>

</html>

六、DIV的透明层实现

<body bgcolor="#ff0ddd">

<div id="Layer1" style="position:absolute; width:260px; height:115px; z-index:1; left: 50px; top: 77px; filter:Alpha(opacity=30)">

        <table width="96%" border="1" cellpadding="1" cellspacing="1" bordercolor="#FFFFFF" bgcolor="#999999">

          <tr>

                                

            <td height="25" bgcolor="#f5f5f5" class="13">你也可以在这里插入图片</td>

                              </tr>

                              <tr>

                                

            <td height="20" bgcolor="#f5f5f5" class="12">你想注册地图名片吗</td>

                              </tr>

                              <tr>

                                

            <td height="20" bgcolor="#f5f5f5" class="12">http://mc.mapabc.com</td>

                              </tr>

                              <tr>

                                

            <td height="20" bgcolor="#f5f5f5" class="12">EMAIL:lipeng@mapabc.com</td>

                              </tr>

                              <tr>

                                

            <td height="20" bgcolor="#f5f5f5" class="12">地址</td>

                              </tr>

                              <tr>

                                

            <td height="20" bgcolor="#f5f5f5" class="12">邮编</td>

                              </tr>

                            </table>

              </div>


换个头像,看见广告就眼红,直接封ID。

TOP

七、强大的表单验证

<title>表单验证类 Validator v1.01</title>

<style>

body,td{font:normal 12px Verdana;color:#333333}

input,textarea,select,td{font:normal 12px Verdana;color:#333333;border:1px solid #999999;background:#ffffff}

table{border-collapse:collapse;}

td{padding:3px}

input{height:20;}

textarea{width:80%;height:50px;overfmin:auto;}

form{display:inline}

</style>

<table align="center">

  <form name="theForm" id="demo" action="" method="get" onSubmit="return Validator.Validate(this,2)">

    <tr>

   <td>真实姓名:</td><td><input name="Name" dataType="Chinese" msg="真实姓名只允许中文"></td>

  </tr>

  <tr>

   <td>英文名:</td><td><input name="Nick" dataType="English" require="false" msg="英文名只允许英文字母"></td>

  </tr>

    <tr>

   <td>主页:</td><td><input name="Homepage" require="false" dataType="Url"   msg="非法的Url"></td>

  </tr>

  <tr>

   <td>密码:</td><td><input name="Password" dataType="SafeString"   msg="密码不符合安全规则" type="password"></td>

  </tr>

  <tr>

   <td>重复:</td><td><input name="Repeat" dataType="Repeat" to="Password" msg="两次输入的密码不一致" type="password"></td>

  </tr>

  <tr>

   <td>信箱:</td><td><input name="Email" dataType="Email" msg="信箱格式不正确"></td>

  </tr>

    <tr>

   <td>信箱:</td><td><input name="Email" dataType="Repeat" to="Email" msg="两次输入的信箱不一致"></td>

  </tr>

  <tr>

   <td>QQ:</td><td><input name="QQ" require="false" dataType="QQ" msg="QQ号码不存在"></td>

  </tr>

    <tr>

   <td>身份证:</td><td><input name="Card" dataType="IdCard" msg="身份证号码不正确"></td>

  </tr>

  <tr>

   <td>年龄:</td><td><input name="Year" dataType="Range" msg="年龄必须在18~28之间" min="18" max="28"></td>

  </tr>

   <tr>

   <td>年龄1:</td><td><input name="Year1" require="false" dataType="Compare" msg="年龄必须在18以上" to="18" operator="GreaterThanEqual"></td>

  </tr>

   <tr>

   <td>电话:</td><td><input name="Phone" require="false" dataType="Phone" msg="电话号码不正确"></td>

  </tr>

   <tr>

   <td>手机:</td><td><input name="Mobile" require="false" dataType="Mobile" msg="手机号码不正确"></td>

  </tr>

     <tr>

   <td>生日:</td><td><input name="Birthday" dataType="Date" format="ymd" msg="生日日期不存在"></td>

  </tr>

   <tr>

   <td>邮政编码:</td><td><input name="Zip" dataType="Custom" regexp="^[1-9]\d{5}$" msg="邮政编码不存在"></td>

  </tr>

  <tr>

   <td>邮政编码:</td><td><input name="Zip1" dataType="Zip" msg="邮政编码不存在"></td>

  </tr>

  <tr>

   <td>操作系统:</td><td><select name="Operation" dataType="Require"  msg="未选择所用操作系统" ><option value="">选择您所用的操作系统</option><option value="Win98">Win98</option><option value="Win2k">Win2k</option><option value="WinXP">WinXP</option></select></td>

  </tr>

  <tr>

   <td>所在省份:</td><td>广东<input name="Province" value="1" type="radio">陕西<input name="Province" value="2" type="radio">浙江<input name="Province" value="3" type="radio">江西<input name="Province" value="4" type="radio" dataType="Group"  msg="必须选定一个省份" ></td>

  </tr>

  <tr>

   <td>爱好:</td><td>运动<input name="Favorite" value="1" type="checkbox">上网<input name="Favorite" value="2" type="checkbox">听音乐<input name="Favorite" value="3" type="checkbox">看书<input name="Favorite" value="4" type="checkbox"" dataType="Group" min="2" max="3"  msg="必须选择2~3种爱好"></td>

  </tr>

   <td>自我介绍:</td><td><textarea name="
Description" dataType="Limit" max="10"  msg="自我介绍内容必须在10个字之内">中文是一个字</textarea></td>

  </tr>

     <td>自传:</td><td><textarea name="
History" dataType="LimitB" min="3" max="10"  msg="自传内容必须在[3,10]个字节之内">中文是两个字节t</textarea></td>

  </tr>

  <tr>

   <td colspan="
2"><input name="Submit" type="submit" value="确定提交"><input  value="检验模式1" type="button"><input  value="检验模式2" type="button"><input  value="检验模式3" type="button"></td>

  </tr>

  </form>

</table>

<script>

/*************************************************

       Validator v1.01

       code by 我佛山人

       wfsr@cunite.com

       http://www.cunite.com

*************************************************/

Validator = {

       Require : /.+/,

       Email : /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/,

       Phone : /^((\(\d{3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}$/,

       Mobile : /^((\(\d{3}\))|(\d{3}\-))?13\d{9}$/,

       Url : /^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"
\"])*$/,

       IdCard : /^\d{15}(\d{2}[A-Za-z0-9])?$/,

       Currency : /^\d+(\.\d+)?$/,

       Number : /^\d+$/,

       Zip : /^[1-9]\d{5}$/,

       QQ : /^[1-9]\d{4,8}$/,

       Integer : /^[-\+]?\d+$/,

       Double : /^[-\+]?\d+(\.\d+)?$/,

       English : /^[A-Za-z]+$/,

       Chinese :  /^[\u0391-\uFFE5]+$/,

       UnSafe : /^(([A-Z]*|[a-z]*|\d*|[-_\~!@#\$%\^&\*\.\(\)\[\]\{\}<>\?\\\/\'\"
]*)|.{0,5})$|\s/,

       IsSafe : function(str){return !this.UnSafe.test(str);},

       SafeString : "this.IsSafe(value)",

       Limit : "this.limit(value.length,getAttribute('min'),  getAttribute('max'))",

       LimitB : "this.limit(this.LenB(value), getAttribute('min'), getAttribute('max'))",

       Date : "this.IsDate(value, getAttribute('min'), getAttribute('format'))",

       Repeat : "value == document.getElementsByName(getAttribute('to'))[0].value",

       Range : "getAttribute('min') < value && value < getAttribute('max')",

       Compare : "this.compare(value,getAttribute('operator'),getAttribute('to'))",

       Custom : "this.Exec(value, getAttribute('regexp'))",

       Group : "this.MustChecked(getAttribute('name'), getAttribute('min'), getAttribute('max'))",

       ErrorItem : [document.forms[0]],

       ErrorMessage : ["以下原因导致提交失败:\t\t\t\t"],

       Validate : function(theForm, mode){

              var obj = theForm || event.srcElement;

              var count = obj.elements.length;

              this.ErrorMessage.length = 1;

              this.ErrorItem.length = 1;

              this.ErrorItem[0] = obj;

              for(var i=0;i<count;i++){

                     with(obj.elements[i]){

                            var _dataType = getAttribute("dataType");

                            if(typeof(_dataType) == "object" || typeof(this[_dataType]) == "undefined")  continue;

                            this.ClearState(obj.elements[i]);

                            if(getAttribute("require") == "false" && value == "") continue;

                            switch(_dataType){

                                   case "Date" :

                                   case "Repeat" :

                                   case "Range" :

                                   case "Compare" :

                                   case "Custom" :

                                   case "Group" :

                                   case "Limit" :

                                   case "LimitB" :

                                   case "SafeString" :

                                          if(!eval(this[_dataType]))      {

                                                 this.AddError(i, getAttribute("msg"));

                                          }

                                          break;

                                   default :

                                          if(!this[_dataType].test(value)){

                                                 this.AddError(i, getAttribute("msg"));

                                          }

                                          break;

                            }

                     }

              }

              if(this.ErrorMessage.length > 1){

                     mode = mode || 1;

                     var errCount = this.ErrorItem.length;

                     switch(mode){

                     case 2 :

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

                                   this.ErrorItem[i].style.color = "red";

                     case 1 :

                            alert(this.ErrorMessage.join("\n"));

                            this.ErrorItem[1].focus();

                            break;

                     case 3 :

                            for(var i=1;i<errCount;i++){

                            try{

                                   var span = document.createElement("SPAN");

                                   span.id = "__ErrorMessagePanel";

                                   span.style.color = "red";

                                   this.ErrorItem[i].parentNode.appendChild(span);

                                   span.innerHTML = this.ErrorMessage[i].replace(/\d+:/,"*");

                                   }

                                   catch(e){alert(e.description);}

                            }

                            this.ErrorItem[1].focus();

                            break;

                     default :

                            alert(this.ErrorMessage.join("\n"));

                            break;

                     }

                     return false;

              }

              return true;

       },

       limit : function(len,min, max){

              min = min || 0;

              max = max || Number.MAX_VALUE;

              return min <= len && len <= max;

       },

       LenB : function(str){

              return str.replace(/[^\x00-\xff]/g,"**").length;

       },

       ClearState : function(elem){

              with(elem){

                     if(style.color == "red")

                            style.color = "";

                     var lastNode = parentNode.childNodes[parentNode.childNodes.length-1];

                     if(lastNode.id == "__ErrorMessagePanel")

                            parentNode.removeChild(lastNode);

              }

       },

       AddError : function(index, str){

              this.ErrorItem[this.ErrorItem.length] = this.ErrorItem[0].elements[index];

              this.ErrorMessage[this.ErrorMessage.length] = this.ErrorMessage.length + ":" + str;

       },

       Exec : function(op, reg){

              return new RegExp(reg,"g").test(op);

       },

       compare : function(op1,operator,op2){

              switch (operator) {

                     case "NotEqual":

                            return (op1 != op2);

                     case "GreaterThan":

                            return (op1 > op2);

                     case "GreaterThanEqual":

                            return (op1 >= op2);

                     case "LessThan":

                            return (op1 < op2);

                     case "LessThanEqual":

                            return (op1 <= op2);

                     default:

                            return (op1 == op2);            

              }

       },

       MustChecked : function(name, min, max){

              var groups = document.getElementsByName(name);

              var hasChecked = 0;

              min = min || 1;

              max = max || groups.length;

              for(var i=groups.length-1;i>=0;i--)

                     if(groups[i].checked) hasChecked++;

              return min <= hasChecked && hasChecked <= max;

       },

       IsDate : function(op, formatString){

              formatString = formatString || "ymd";

              var m, year, month, day;

              switch(formatString){

                     case "ymd" :

                            m = op.match(new RegExp("^((\\d{4})|(\\d{2}))([-./])(\\d{1,2})\\4(\\d{1,2})$"));

                            if(m == null ) return false;

                            day = m[6];

                            month = m[5]--;

                            year =  (m[2].length == 4) ? m[2] : GetFullYear(parseInt(m[3], 10));

                            break;

                     case "dmy" :

                            m = op.match(new RegExp("^(\\d{1,2})([-./])(\\d{1,2})\\2((\\d{4})|(\\d{2}))$"));

                            if(m == null ) return false;

                            day = m[1];

                            month = m[3]--;

                            year = (m[5].length == 4) ? m[5] : GetFullYear(parseInt(m[6], 10));

                            break;

                     default :

                            break;

              }

              if(!parseInt(month)) return false;

              month = month==12 ?0:month;

              var date = new Date(year, month, day);

        return (typeof(date) == "object" && year == date.getFullYear() && month == date.getMonth() && day == date.getDate());

              function GetFullYear(y){return ((y<30 ? "20" : "19") + y)|0;}

       }

}

</script>

八、漂亮的脚本日历

<Script LANGUAGE="JavaScript">

var months = new Array("一", "二", "三","四", "五", "六", "七", "八", "九","十", "十一", "十二");

var daysInMonth = new Array(31, 28, 31, 30, 31, 30, 31, 31,30, 31, 30, 31);

var days = new Array("日","一", "二", "三","四", "五", "六");

var classTemp;

var today=new getToday();

var year=today.year;

var month=today.month;

var newCal;



function getDays(month, year) {

  if (1 == month) return ((0 == year % 4) && (0 != (year % 100))) ||(0 == year % 400) ? 29 : 28;

  else return daysInMonth[month];

}



function getToday() {

  this.now = new Date();

  this.year = this.now.getFullYear();

  this.month = this.now.getMonth();

  this.day = this.now.getDate();

}



function Calendar() {

  newCal = new Date(year,month,1);

  today = new getToday();   

  var day = -1;

  var startDay = newCal.getDay();

  var endDay=getDays(newCal.getMonth(), newCal.getFullYear());

  var daily = 0;

  if ((today.year == newCal.getFullYear()) &&(today.month == newCal.getMonth()))

  {

   day = today.day;

  }

  var caltable = document.all.caltable.tBodies.calendar;

  var intDaysInMonth =getDays(newCal.getMonth(), newCal.getFullYear());



  for (var intWeek = 0; intWeek < caltable.rows.length;intWeek++)

   for (var intDay = 0;intDay < caltable.rows[intWeek].cells.length;intDay++)

   {

    var cell = caltable.rows[intWeek].cells[intDay];

    var montemp=(newCal.getMonth()+1)<10?("0"+(newCal.getMonth()+1)):(newCal.getMonth()+1);         

    if ((intDay == startDay) && (0 == daily)){ daily = 1;}

    var daytemp=daily<10?("0"+daily):(daily);

    var d="<"+newCal.getFullYear()+"-"+montemp+"-"+daytemp+">";

    if(day==daily) cell.className="DayNow";

    else if(intDay==6) cell.className = "DaySat";

    else if (intDay==0) cell.className ="DaySun";

    else cell.className="Day";

    if ((daily > 0) && (daily <= intDaysInMonth))

    {

     cell.innerText = daily;

     daily++;

    } else

    {

     cell.className="CalendarTD";

     cell.innerText = "";

    }

  }

  document.all.year.value=year;

  document.all.month.value=month+1;

}



function subMonth()

{

  if ((month-1)<0)

  {

   month=11;

   year=year-1;

  } else

  {

   month=month-1;

  }

  Calendar();

}



function addMonth()

{

  if((month+1)>11)

  {

   month=0;

   year=year+1;

  } else

  {

   month=month+1;

  }

  Calendar();

}



function setDate()

{

  if (document.all.month.value<1||document.all.month.value>12)

  {

   alert("月的有效范围在1-12之间!");

   return;

  }

  year=Math.ceil(document.all.year.value);

  month=Math.ceil(document.all.month.value-1);

  Calendar();

}

</Script>



<Script>

function buttonOver()

{

var obj = window.event.srcElement;

obj.runtimeStyle.cssText = "background-color:#FFFFFF";

// obj.className="Hover";

}



function buttonOut()

{

var obj = window.event.srcElement;

window.setTimeout(function(){obj.runtimeStyle.cssText = "";},300);

}

</Script>



<Style>

Input {font-family: verdana;font-size: 9pt;text-decoration: none;background-color: #FFFFFF;height: 20px;border: 1px solid #666666;color:#000000;}



.Calendar {font-family: verdana;text-decoration: none;width: 170;background-color: #C0D0E8;font-size: 9pt;border:0px dotted #1C6FA5;}

.CalendarTD {font-family: verdana;font-size: 7pt;color: #000000;background-color:#f6f6f6;height: 20px;width:11%;text-align: center;}



.Title {font-family: verdana;font-size: 11pt;font-weight: normal;height: 24px;text-align: center;color: #333333;text-decoration: none;background-color: #A4B9D7;border-top-width: 1px;border-right-width: 1px;border-bottom-width: 1px;border-left-width: 1px;border-bottom-style:1px;border-top-color: #999999;border-right-color: #999999;border-bottom-color: #999999;border-left-color: #999999;}



.Day {font-family: verdana;font-size: 7pt;color:#243F65;background-color: #E5E9F2;height: 20px;width:11%;text-align: center;}

.DaySat {font-family: verdana;font-size: 7pt;color:#FF0000;text-decoration: none;background-color:#E5E9F2;text-align: center;height: 18px;width: 12%;}

.DaySun {font-family: verdana;font-size: 7pt;color: #FF0000;text-decoration: none;background-color:#E5E9F2;text-align: center;height: 18px;width: 12%;}

.DayNow {font-family: verdana;font-size: 7pt;font-weight: bold;color: #000000;background-color: #FFFFFF;height: 20px;text-align: center;}



.DayTitle {font-family: verdana;font-size: 9pt;color: #000000;background-color: #C0D0E8;height: 20px;width:11%;text-align: center;}

.DaySatTitle {font-family: verdana;font-size: 9pt;color:#FF0000;text-decoration: none;background-color:#C0D0E8;text-align: center;height: 20px;width: 12%;}

.DaySunTitle {font-family: verdana;font-size: 9pt;color: #FF0000;text-decoration: none;background-color: #C0D0E8;text-align: center;height: 20px;width: 12%;}



.DayButton {font-family: Webdings;font-size: 9pt;font-weight: bold;color: #243F65;cursor:hand;text-decoration: none;}



</Style>





<table border="0" cellpadding="0" cellspacing="1" class="Calendar" id="caltable">

<thead>

     <tr align="center" valign="middle">

  <td colspan="7" class="Title">

   <a href="javaScript:subMonth();" title="上一月" Class="DayButton">3</a> <input name="year" type="text" size="4" maxlength="4" onkeydown="if (event.keyCode==13){setDate()}" onkeyup="this.value=this.value.replace(/[^0-9]/g,'')"  onpaste="this.value=this.value.replace(/[^0-9]/g,'')"><input name="month" type="text" size="1" maxlength="2" onkeydown="if (event.keyCode==13){setDate()}" onkeyup="this.value=this.value.replace(/[^0-9]/g,'')"  onpaste="this.value=this.value.replace(/[^0-9]/g,'')"><a href="JavaScript:addMonth();" title="下一月" Class="DayButton">4</a>

  </td>

</tr>

<tr align="center" valign="middle">

  <Script LANGUAGE="JavaScript">  

   document.write("<TD class=DaySunTitle id=diary >" + days[0] + "</TD>");

   for (var intLoop = 1; intLoop < days.length-1;intLoop++)

    document.write("<TD class=DayTitle id=diary>" + days[intLoop] + "</TD>");

    document.write("<TD class=DaySatTitle id=diary>" + days[intLoop] + "</TD>");

  </Script>

</TR>

</thead>

<TBODY border=1 cellspacing="0" cellpadding="0" ID="calendar" ALIGN=CENTER ONCLICK="getDiary()">

<Script LANGUAGE="JavaScript">

  for (var intWeeks = 0; intWeeks < 6; intWeeks++)

  {

   document.write("<TR style='cursor:hand'>");

   for (var intDays = 0; intDays < days.length;intDays++) document.write("<TD class=CalendarTD onMouseover='buttonOver();' onMouseOut='buttonOut();'></TD>");

   document.write("</TR>");

  }

</Script>

</TBODY>

</TABLE>

<Script  LANGUAGE="JavaScript">

Calendar();

</Script>


换个头像,看见广告就眼红,直接封ID。

TOP

九、从左到右的色彩变化——来自布拉格公园

<script>var message="布拉格公园,Evance'Park"
var n=0;
if (document.all){
document.write('<font size="12px" color="red">')
for (m=0;m<message.length;m++)
document.write('<span id="neonlight" style="font-size:12px">'+message.charAt(m)+'</span>')
document.write('</font>')
var tempref=document.all.neonlight
}
else
document.write(message)
function neon(){
if (n==0){
for (m=0;m<message.length;m++)
tempref[m].style.color="#000000"
}
tempref[n].style.color="RED"
if (n<tempref.length-1)
n++
else{
n=0
clearInterval(flashing)
setTimeout("beginneon()",1000)
return
}
}
function beginneon(){
if (document.all)
flashing=setInterval("neon()",50)
}
beginneon()
</script>

常用js封装

<?php
//

// +----------------------------------------------------------------------+

// | JS javascript 类 |

// +----------------------------------------------------------------------+

// | Copyright (c) 2001 NetFish Software |

// | |

// | Author: whxbb(whxbb@21cn.com) |

// +----------------------------------------------------------------------+

//

// $Id: js.class.php,v 0.1 2001/8/5 18:48:33 yf Exp $

//


// 禁止直接访问该页面

if (basename($HTTP_SERVER_VARS['PHP_SELF']) == "js.class.php") {
    header("HTTP/1.0 404 Not Found");
}

/**
* Purpose
* 封装了一些常用的Javascript代码,以便在PHP中快速调用
* @author : whxbb(whxbb@21cn.com)
* @version : 0.1
* @date : 2001/8/5
*/

class JS
{
    function JS(){}
   
    /**
     * 返回上页
     * @param $step 返回的层数 默认为1
     */

    function Back($step = -1)
    {
        $msg = "history.go(".$step.");";
        JS::_Write($msg);
        JS::FreeResource();
        exit;
    }

    /**
     * 弹出警告的窗口
     * @param $msg 警告信息
     */

    function Alert($msg)
    {
        $msg = "alert("".$msg."");";
        JS::_Write($msg);
    }
    /**
     * 写js
     * @param $msg
     */

    function _Write($msg)
    {
        echo "<script language="javascript">n";
        echo $msg;
        echo "n</script>";
    }

    /**
     * 刷新当前页
     */

    function Reload()
    {
        $msg = "location.reload();";
        JS::FreeResource();
        JS::_Write($msg);
        exit;
    }
    /**
     * 刷新弹出父页
     */

    function ReloadOpener()
    {
        $msg = "if (opener) opener.location.reload();";
        JS::_Write($msg);
    }

    /**
     * 跳转到url
     * @param $url 目标页
     */

    function Goto($url)
    {
        $msg = "location.href = '$url';";
        JS::FreeResource();
        JS::_Write($msg);
        exit;
    }
    /**
     * 关闭窗口
     */

     function Close()
     {
         $msg = "window.close()";
        JS::FreeResource();
        JS::_Write($msg);
        exit;
        
     }
    /**
     * 提交表单
     * @param $frm 表单名
     */

    function Submit($frm)
    {
        $msg = $frm.".submit();";
        JS::_Write($msg);
    }
    /**
     * 关闭数据库连接
     */

    function FreeResource()
    {
        // 数据库连接标志

        global $conn;
        if (is_resource($conn))
            @mysql_close($conn);
    }
}
?>

换个头像,看见广告就眼红,直接封ID。

TOP

发新话题