发新话题
打印

常用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