實用且不花哨的js代碼大全(一)

 
  • 事件源對象

    event.srcElement.tagName

    event.srcElement.type

  • 捕獲釋放

    event.srcElement.setCapture();  

    event.srcElement.releaseCapture();  

  • 事件按鍵

    event.keyCode

    event.shiftKey

    event.altKey

    event.ctrlKey

  • 事件返回值

    event.returnValue

  • 鼠標位置

    event.x

    event.y

  • 窗體活動元素

    document.activeElement

  • 綁定事件

    document.captureEvents(Event.KEYDOWN);

  • 訪問窗體元素

    document.all("txt").focus();

    document.all("txt").select();

  • 窗體命令

    document.execCommand

  • 窗體COOKIE

    document.cookie

  • 菜單事件

    document.oncontextmenu

  • 創建元素

    document.createElement("SPAN");  

  • 根據鼠標獲得元素:

    document.elementFromPoint(event.x,event.y).tagName=="TD

    document.elementFromPoint(event.x,event.y).appendChild(ms)  

  • 窗體圖片

    document.images[索引]

  • 窗體事件綁定

    document.onmousedown=scrollwindow;

  • 元素

    document.窗體.elements[索引]

  • 對象綁定事件

    document.all.xxx.detachEvent('onclick',a);

  • 插件數目

    navigator.plugins

  • 取變量類型

    typeof($js_libpath) == "undefined"

  • 下拉框

    下拉框.options[索引]

    下拉框.options.length

  • 查找對象

    document.getElementsByName("r1");

    document.getElementById(id);

  • 定時

    timer=setInterval('scrollwindow()',delay);

    clearInterval(timer);

  • UNCODE編碼

    escape() ,unescape

  • 父對象

    obj.parentElement(dhtml)

    obj.parentNode(dom)

  • 交換表的行

    TableID.moveRow(2,1)

  • 替換CSS

    document.all.csss.href = "a.css";

  • 並排顯示

    display:inline

  • 隱藏焦點

    hidefocus=true

  • 根據寬度換行

    style="word-break:break-all"

  • 自動刷新

    <meta HTTP-EQUIV="refresh" C>

  • 簡單郵件

    <a  href="[[email protected]?subject=ccc&body=xxxyyy]mailto:[email protected]?subject=ccc&body=xxxyyy[/email]">  

  • 快速轉到位置

    obj.scrollIntoView(true)

  • <a name="first">

    <a href="#first">anchors</a>

  • 網頁傳遞參數

    location.search();

  • 可編輯

    obj.contenteditable=true

  • 執行菜單命令

    obj.execCommand

  • 雙字節字符

    /[^\x00-\xff]/

    漢字

    /[\u4e00-\u9fa5]/

  • 讓英文字符串超出表格寬度自動換行

    word-wrap: break-word; word-break: break-all;

  • 透明背景

    <IFRAME src="1.htm" width=300 height=180 allowtransparency></iframe>

  • 獲得style內容

    obj.style.cssText

  • HTML標籤

    document.documentElement.innerHTML

  • 第一個style標籤

    document.styleSheets[0]

  • style標籤裏的第一個樣式

    document.styleSheets[0].rules[0]

  • 防止點擊空鏈接時,頁面往往重置到頁首端。

    <a href="javascript:function()">word</a>

  • 上一網頁源

    asp:

    request.servervariables("HTTP_REFERER")

    javascript:

    document.referrer

  • 釋放內存

    CollectGarbage();

  • 禁止右鍵

    document.oncontextmenu = function() { return false;}

  • 禁止保存

    <noscript><iframe src="*.htm"></iframe></noscript>

  • 禁止選取<body      Shortcut Icon" href="favicon.ico">

    favicon.ico 名字最好不變16*16的16色,放虛擬目錄根目錄下

  • 收藏欄圖標

    <link rel="Bookmark" href="favicon.ico">

  • 查看源碼

    <input type=button value=查看網頁源代碼 >

  • 關閉輸入法

    <input style="ime-mode:disabled">

  • 自動全選

    <input type=text name=text1 value="123" >

  • ENTER鍵可以讓光標移到下一個輸入框

    <input >

  • 文本框的默認值

    <input type=text value="123" >

  • title換行

    obj.title = "123 sdfs "

  • 獲得時間所代表的微秒

    var n1 = new Date("2004-10-10".replace(/-/g, "\/")).getTime()

  • 窗口是否關閉

    win.closed

  • checkbox扁平

    <input type=checkbox style="position: absolute; clip:rect(5px 15px 15px 5px)"><br>

  • 獲取選中內容

    document.selection.createRange().duplicate().text

  • 自動完成功能

    <input  type=text  autocomplete=on>打開該功能  

    <input  type=text  autocomplete=off>關閉該功能

  • 窗口最大化

    <body >

  • 無關閉按鈕IE window.open("aa.htm", "meizz", "fullscreen=7");
  • 統一編碼/解碼 alert(decodeURIComponent(encodeURIComponent("http://你好.com?as= hehe")))

    encodeURIComponent對":"、"/"、";" 和 "?"也編碼

高級應用(一) ~~~~~~~~~~~~~~

//各種尺寸

s  +=  "\r\n網頁可見區域寬:"+  document.body.clientWidth;   

s  +=  "\r\n網頁可見區域高:"+  document.body.clientHeight;   

s  +=  "\r\n網頁可見區域高:"+  document.body.offsetWeight  +"  (包括邊線的寬)";   

s  +=  "\r\n網頁可見區域高:"+  document.body.offsetHeight  +"  (包括邊線的寬)";   

s  +=  "\r\n網頁正文全文寬:"+  document.body.scrollWidth;   

s  +=  "\r\n網頁正文全文高:"+  document.body.scrollHeight;   

s  +=  "\r\n網頁被捲去的高:"+  document.body.scrollTop;   

s  +=  "\r\n網頁被捲去的左:"+  document.body.scrollLeft;   

s  +=  "\r\n網頁正文部分上:"+  window.screenTop;   

s  +=  "\r\n網頁正文部分左:"+  window.screenLeft;   

s  +=  "\r\n屏幕分辨率的高:"+  window.screen.height;   

s  +=  "\r\n屏幕分辨率的寬:"+  window.screen.width;   

s  +=  "\r\n屏幕可用工作區高度:"+  window.screen.availHeight;   

s  +=  "\r\n屏幕可用工作區寬度:"+  window.screen.availWidth;   

//過濾數字

<input type=text onkeypress="return event.keyCode>=48&&event.keyCode<=57||(this.value.indexOf('.')<0?event.keyCode==46:false)" onpaste="return !clipboardData.getData('text').match(/\D/)" ondragenter="return false">

//特殊用途

<input type=button value=導入收藏夾 onclick="window.external.ImportExportFavorites(true,'http://localhost');">

<input type=button value=導出收藏夾 onclick="window.external.ImportExportFavorites(false,'http://localhost');">

<input type=button value=整理收藏夾 onclick="window.external.ShowBrowserUI('OrganizeFavorites', null)">

<input type=button value=語言設置   onclick="window.external.ShowBrowserUI('LanguageDialog', null)">

<input type=button value=加入收藏夾 onclick="window.external.AddFavorite('http://www.google.com/', 'google')">

<input type=button value=加入到頻道 onclick="window.external.addChannel('http://www.google.com/')">

<input type=button value=加入到頻道 onclick="window.external.showBrowserUI('PrivacySettings',null)">

//不緩存

<META HTTP-EQUIV="pragma" CONTENT="no-cache">

<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate">

<META HTTP-EQUIV="expires" CONTENT="0">

//正則匹配

匹配中文字符的正則表達式: [\u4e00-\u9fa5]

匹配雙字節字符(包括漢字在內):[^\x00-\xff]

匹配空行的正則表達式:\n[\s| ]*\r

匹配HTML標記的正則表達式:/<(.*)>.*<\/\1>|<(.*) \/>/  

匹配首尾空格的正則表達式:(^\s*)|(\s*$)(像vbscript那樣的trim函數)

匹配Email地址的正則表達式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*

匹配網址URL的正則表達式:http://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?

以下是例子:

利用正則表達式限制網頁表單裏的文本框輸入內容:

用正則表達式限制只能輸入中文:onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,''))"

1.用正則表達式限制只能輸入全角字符: onkeyup="value=value.replace(/[^\uFF00-\uFFFF]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\uFF00-\uFFFF]/g,''))"

2.用正則表達式限制只能輸入數字:onkeyup="value=value.replace(/[^\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"

3.用正則表達式限制只能輸入數字和英文:onkeyup="value=value.replace(/[\W]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"

//消除圖像工具欄

<IMG SRC="mypicture.jpg" HEIGHT="100px" WIDTH="100px" GALLERYIMG="false">  

or

<head>

<meta http-equiv="imagetoolbar" content="no">

</head>

//無提示關閉

function Close()

{

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);

       document.all.noTipClose.Click();

  }

      else

  {

       window.opener =null;

       window.close();

      }

   }

else

{

  window.close()

   }

}

//取得控件得絕對位置(1)

<script language="javascript">  

function getoffset(e)

{  

var t=e.offsetTop;  

var l=e.offsetLeft;  

while(e=e.offsetParent)

{  

  t+=e.offsetTop;  

  l+=e.offsetLeft;  

}  

var rec = new Array(1);

rec[0]  = t;

rec[1] = l;

return rec

}  

</script>

//獲得控件的絕對位置(2)

oRect = obj.getBoundingClientRect();

oRect.left

oRect.

//最小化,最大化,關閉

<object id=min classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">  

<param name="Command" value="Minimize"></object>  

<object id=max classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">  

<param name="Command" value="Maximize"></object>  

<OBJECT id=close classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11">  

<PARAM NAME="Command" value="Close"></OBJECT>  

<input type=button value=最小化 onclick=min.Click()>  

<input type=button value=最大化 onclick=max.Click()>  

<input type=button value=關閉 onclick=close.Click()>  

//光標停在文字最後

<script language="javascript">

function cc()

{

var e = event.srcElement;

var r =e.createTextRange();

r.moveStart('character',e.value.length);

r.collapse(true);

r.select();

}

</script>

<input type=text name=text1 value="123" onfocus="cc()">

//頁面進入和退出的特效

進入頁面<meta http-equiv="Page-Enter" content="revealTrans(duration=x, transition=y)">

推出頁面<meta http-equiv="Page-Exit" content="revealTrans(duration=x, transition=y)">  

這個是頁面被載入和調出時的一些特效。duration表示特效的持續時間,以秒爲單位。transition表示使

用哪種特效,取值爲1-23:

  0 矩形縮小  

  1 矩形擴大  

  2 圓形縮小

  3 圓形擴大  

  4 下到上刷新  

  5 上到下刷新

  6 左到右刷新  

  7 右到左刷新  

  8 豎百葉窗

  9 橫百葉窗  

  10 錯位橫百葉窗  

  11 錯位豎百葉窗

  12 點擴散  

  13 左右到中間刷新  

  14 中間到左右刷新

  15 中間到上下

  16 上下到中間  

  17 右下到左上

  18 右上到左下  

  19 左上到右下  

  20 左下到右上

  21 橫條  

  22 豎條  

  23  

//網頁是否被檢索 <meta name="ROBOTS" content="屬性值">

  其中屬性值有以下一些:

  屬性值爲"all": 文件將被檢索,且頁上鍊接可被查詢;

  屬性值爲"none": 文件不被檢索,而且不查詢頁上的鏈接;

  屬性值爲"index": 文件將被檢索;

  屬性值爲"follow": 查詢頁上的鏈接;

  屬性值爲"noindex": 文件不檢索,但可被查詢鏈接;

  屬性值爲"nofollow":  

//打印分頁 <p  style="page-break-after:always">page1</p>   

<p  style="page-break-after:always">page2</p>   

//設置打印

<object id="factory" style="display:none" viewastext

  classid="clsid:1663ed61-23eb-11d2-b92f-008048fdd814"

  codebase="http://www.meadroid.com/scriptx/ScriptX.cab#Version=5,60,0,360"

></object>

<input type=button value=頁面設置 onclick="factory.printing.PageSetup()">

<input type=button value=打印預覽 onclick="factory.printing.Preview()">

  

<script language=javascript>

function window.onload()

{

   // -- advanced features

   factory.printing.SetMarginMeasure(2) // measure margins in inches

   factory.printing.SetPageRange(false, 1, 3) // need pages from 1 to 3

   factory.printing.printer = "HP DeskJet 870C"

   factory.printing.copies = 2

   factory.printing.collate = true

   factory.printing.paperSize = "A4"

   factory.printing.paperSource = "Manual feed"

   // -- basic features

   factory.printing.header = "居左顯示&b居中顯示&b居右顯示頁碼,第&p頁/共&P頁"

   factory.printing.footer = "(自定義頁腳)"

   factory.printing.portrait = false

   factory.printing.leftMargin = 0.75

   factory.printing.topMargin = 1.5

   factory.printing.rightMargin = 0.75

   factory.printing.bottomMargin = 1.5

}

function Print(frame) {

  factory.printing.Print(true, frame) // print with prompt

}

</script>

<input type=button value="打印本頁" onclick="factory.printing.Print(false)">

<input type=button value="頁面設置" onclick="factory.printing.PageSetup()">

<input type=button value="打印預覽" onclick="factory.printing.Preview()"><br>

<a href="http://www.meadroid.com/scriptx/docs/printdoc.htm?static"  target=_blank>具體使用手冊,更多信息,點這裏</a>

//自帶的打印預覽

WebBrowser.ExecWB(1,1) 打開  

Web.ExecWB(2,1) 關閉現在所有的IE窗口,並打開一個新窗口  

Web.ExecWB(4,1) 保存網頁  

Web.ExecWB(6,1) 打印  

Web.ExecWB(7,1) 打印預覽  

Web.ExecWB(8,1) 打印頁面設置  

Web.ExecWB(10,1) 查看頁面屬性  

Web.ExecWB(15,1) 好像是撤銷,有待確認  

Web.ExecWB(17,1) 全選  

Web.ExecWB(22,1) 刷新  

Web.ExecWB(45,1) 關閉窗體無提示  

<style media=print>  

.Noprint{display:none;}<!--用本樣式在打印時隱藏非打印項目-->  

.PageNext{page-break-after: always;}<!--控制分頁-->  

</style>  

<object  id="WebBrowser"  width=0  height=0  classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2">     

</object>     

  

<center class="Noprint" >

<input type=button value=打印 onclick=document.all.WebBrowser.ExecWB(6,1)>  

<input type=button value=直接打印 onclick=document.all.WebBrowser.ExecWB(6,6)>  

<input type=button value=頁面設置 onclick=document.all.WebBrowser.ExecWB(8,1)>  

</p>  

<p> <input type=button value=打印預覽 onclick=document.all.WebBrowser.ExecWB(7,1)>  

</center>

//去掉打印時的頁眉頁腳

<script  language="JavaScript">   

var HKEY_Root,HKEY_Path,HKEY_Key;

HKEY_Root="HKEY_CURRENT_USER";

HKEY_Path="\\Software\\Microsoft\\Internet Explorer\\PageSetup\\";

//設置網頁打印的頁眉頁腳爲空

function PageSetup_Null()

{

try

{

         var Wsh=new ActiveXObject("WScript.Shell");

  HKEY_Key="header";

  Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"");

  HKEY_Key="footer";

  Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"");

}

catch(e){}

}

//設置網頁打印的頁眉頁腳爲默認值

function  PageSetup_Default()

{   

try

{

  var Wsh=new ActiveXObject("WScript.Shell");

  HKEY_Key="header";

  Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"&w&b頁碼,&p/&P");

  HKEY_Key="footer";

  Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"&u&b&d");

}

catch(e){}

}

</script>

<input type="button" value="清空頁碼" onclick=PageSetup_Null()>

<input type="button" value="恢復頁碼" onclick=PageSetup_Default()>

//瀏覽器驗證

function checkBrowser()

{  

   this.ver=navigator.appVersion  

   this.dom=document.getElementById?1:0  

   this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom)?1:0;  

   this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom)?1:0;  

   this.ie4=(document.all && !this.dom)?1:0;  

   this.ns5=(this.dom && parseInt(this.ver) >= 5) ?1:0;  

   this.ns4=(document.layers && !this.dom)?1:0;  

   this.mac=(this.ver.indexOf('Mac') > -1) ?1:0;  

   this.ope=(navigator.userAgent.indexOf('Opera')>-1);  

   this.ie=(this.ie6 || this.ie5 || this.ie4)  

   this.ns=(this.ns4 || this.ns5)  

   this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns5 || this.ns4 || this.mac || this.ope)  

   this.nbw=(!this.bw)  

   return this;

}

//計算內容寬和高

<SCRIPT  language="javascript">   

function  test(obj)   

{   

       var  range  =  obj.createTextRange();   

       alert("內容區寬度:  "  +  range.boundingWidth     

                                                 +  "px\r\n內容區高度:  "  +  range.boundingHeight  +  "px");   

              

}   

</SCRIPT>   

<BODY>   

<Textarea id="txt" height="150">sdf</textarea><INPUT  type="button"  value="計算內容寬度"  onClick="test(txt)">   

</BODY>

//無模式的提示框 function modelessAlert(Msg)

{

   window.showModelessDialog("javascript:alert(\""+escape(Msg)+"\");window.close();","","status:no;resizable:no;help:no;dialogHeight:height:30px;dialogHeight:40px;");

}

//屏蔽按鍵

<html>

<head>

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

  <noscript><meta http-equiv="refresh" content="0;url=about:noscript"></noscript>

  <title>屏蔽鼠標右鍵、Ctrl+N、Shift+F10、Alt+F4、F11、F5刷新、退格鍵</title>

</head>

<body>

<script language="Javascript"><!--

  //屏蔽鼠標右鍵、Ctrl+N、Shift+F10、F11、F5刷新、退格鍵

  //Author: meizz(梅花雨) 2002-6-18

function document.oncontextmenu(){event.returnValue=false;}//屏蔽鼠標右鍵

function window.onhelp(){return false} //屏蔽F1幫助

function document.onkeydown()

{

  if ((window.event.altKey)&&

      ((window.event.keyCode==37)||   //屏蔽 Alt+ 方向鍵 ←

       (window.event.keyCode==39)))   //屏蔽 Alt+ 方向鍵 →

  {

     alert("不准你使用ALT+方向鍵前進或後退網頁!");

     event.returnValue=false;

  }

     /* 注:這還不是真正地屏蔽 Alt+ 方向鍵,

     因爲 Alt+ 方向鍵彈出警告框時,按住 Alt 鍵不放,

     用鼠標點掉警告框,這種屏蔽方法就失效了。以後若

     有哪位高手有真正屏蔽 Alt 鍵的方法,請告知。*/

  if ((event.keyCode==8)  ||                 //屏蔽退格刪除鍵

      (event.keyCode==116)||                 //屏蔽 F5 刷新鍵

      (event.ctrlKey && event.keyCode==82)){ //Ctrl + R

     event.keyCode=0;

     event.returnValue=false;

     }

  if (event.keyCode==122){event.keyCode=0;event.returnValue=false;}  //屏蔽F11

  if (event.ctrlKey && event.keyCode==78) event.returnValue=false;   //屏蔽 Ctrl+n

  if (event.shiftKey && event.keyCode==121)event.returnValue=false;  //屏蔽 shift+F10

  if (window.event.srcElement.tagName == "A" && window.event.shiftKey)  

      window.event.returnValue = false;             //屏蔽 shift 加鼠標左鍵新開一網頁

  if ((window.event.altKey)&&(window.event.keyCode==115))             //屏蔽Alt+F4

  {

      window.showModelessDialog("about:blank","","dialogWidth:1px;dialogheight:1px");

      return false;

  }

}

</script>

屏蔽鼠標右鍵、Ctrl+N、Shift+F10、Alt+F4、F11、F5刷新、退格鍵

</body>

</html>

//屏蔽打印

<style>

@media print{

* {display:none}

}

</style>

//移動的圖層,拖動

1.<span style='position:absolute;width:200;height:200;background:red' onmousedown=MouseDown(this) onmousemove=MouseMove() onmouseup=MouseUp()>meizz</span>

<script language=javascript>

var Obj;

function MouseDown(obj)

{

  Obj=obj;

  Obj.setCapture();

  Obj.l=event.x-Obj.style.pixelLeft;

  Obj.t=event.y-Obj.style.pixelTop;

}

function MouseMove()

{

  if(Obj!=null)

  {

    Obj.style.left = event.x-Obj.l;

    Obj.style.top = event.y-Obj.t;

  }

}

function MouseUp()

{

  if(Obj!=null)

  {

    Obj.releaseCapture();

    Obj=null;

  }

}

</script>

2.

<div id="myDiv" src="logo.gif" ondrag="doDrag();" onmouseover="this.style.cursor='hand'" style="position:absolute;left=100;top=100;" onmousedown="doMouseDown();">

<a href="#" onclick="return false"><h1>wlecome</h1></a>

</div>

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

var orgMouseX;

var orgMouseY;

var orgObjX;

var orgObjY;

function doDrag()

{

var myObject=document.all.myDiv;

var x=event.clientX;

var y=event.clientY;

myObject.style.left=x-(orgMouseX-orgObjX);

myObject.style.top=y-(orgMouseY-orgObjY);

  

}

function doMouseDown()

{

orgMouseX=event.clientX;

orgMouseY=event.clientY;

orgObjX=parseInt(document.all.myDiv.style.left);

orgObjY=parseInt(document.all.myDiv.style.top);

}

</script>

  

//文檔狀態改變

<iframe src="a.html" id="f" name="f" scrolling="no" frameborder=0 marginwidth=0 marginheight=0></iframe>

<script>

var doc=window.frames["f"].document;

function s(){

if (doc.readyState=="complete"){

  document.all.f.style.height=doc.body.scrollHeight

  document.all.f.style.width=doc.body.scrollWidth

}

}

doc.onreadystatechange=s

</script>

//刷新後不變的文本框 <HTML>

<HEAD>

<META NAME="save" CONTENT="history">

<STYLE>

   .sHistory {behavior:url(#default#savehistory);}

</STYLE>

</HEAD>

<BODY>

<INPUT class=sHistory type=text id=oPersistInput>

</BODY>

</HTML>

//訪問剪貼板

event.dataTransfer.setData("URL", oImage.src);

sImageURL = event.dataTransfer.getData("URL")

(2)普通訪問

window.clipboardData.setData("Text",oSource.innerText);

window.clipboardData.getData("Text");

//操作COOKIE

function SetCookie(sName, sValue)

{

document.cookie = sName + "=" + escape(sValue) + "; ";

}

function GetCookie(sName)

{

var aCookie = document.cookie.split("; ");

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

{

   

  var aCrumb = aCookie.split("=");

  if (sName == aCrumb[0])  

  return unescape(aCrumb[1]);

}

  

}

function DelCookie(sName)

{

document.cookie = sName + "=" + escape(sValue) + "; expires=Fri, 31 Dec 1999 23:59:59 GMT;";

}

//setTimeout增加參數

<script>

var _st = window.setTimeout;

window.setTimeout = function(fRef, mDelay) {

if(typeof fRef == 'function'){

  var argu = Array.prototype.slice.call(arguments,2);

  var f = (function(){ fRef.apply(null, argu); });

  return _st(f, mDelay);

}

return _st(fRef,mDelay);

}

function test(x){

alert(x);

}

window.setTimeout(test,1000,'fason');

</script>

//自定義的apply,call

Function.prototype.apply = function (obj, argu) {

if (obj) obj.constructor.prototype._caller = this;  

var argus = new Array();

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

  argus = "argu[" + i + "]";

var r;

eval("r = " + (obj ? ("obj._caller(" + argus.join(",") + ");") : ("this(" + argus.join(",") + ");")));

return r;

};

Function.prototype.call = function (obj) {

var argu = new Array();

for (var i=1;i<arguments.length;i++)

  argu[i-1] = arguments;

return this.apply(obj, argu);

};        

//下載文件

function DownURL(strRemoteURL,strLocalURL)

{

try

{

  var xmlHTTP=new ActiveXObject("Microsoft.XMLHTTP");

  xmlHTTP.open("Get",strRemoteURL,false);

  xmlHTTP.send();

  var adodbStream=new ActiveXObject("ADODB.Stream");

  adodbStream.Type=1;//1=adTypeBinary

  adodbStream.Open();

  adodbStream.write(xmlHTTP.responseBody);

  adodbStream.SaveToFile(strLocalURL,2);

  adodbStream.Close();

  adodbStream=null;

  xmlHTTP=null;

   

}

catch(e)

{

  window.confirm("下載URL出錯!");

}

//window.confirm("下載完成.");

}

//檢驗連接是否有效

function getXML(URL)  

{

var xmlhttp = new ActiveXObject("microsoft.xmlhttp");

xmlhttp.Open("GET",URL, false);  

try

{  

  xmlhttp.Send();

}

catch(e){}

finally  

{

  var result = xmlhttp.responseText;

  if(result)  

  {

   if(xmlhttp.Status==200)

   {

    return(true);

   }

   else  

   {

    return(false);

   }

  }

  else  

  {

   return(false);

  }

}

}

//POST代替FORM

<SCRIPT language="VBScript">

Function URLEncoding(vstrIn)

    strReturn = ""

    For i = 1 To Len(vstrIn)

        ThisChr = Mid(vStrIn,i,1)

        If Abs(Asc(ThisChr)) < &HFF Then

            strReturn = strReturn & ThisChr

        Else

            innerCode = Asc(ThisChr)

            If innerCode < 0 Then

                innerCode = innerCode + &H10000

            End If

            Hight8 = (innerCode  And &HFF00)\ &HFF

            Low8 = innerCode And &HFF

            strReturn = strReturn & "%" & Hex(Hight8) &  "%" & Hex(Low8)

        End If

    Next

    URLEncoding = strReturn

End Function

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

dim strA,oReq

strA = URLEncoding("submit1=Submit&text1=中文")

set oReq = CreateObject("MSXML2.XMLHTTP")

oReq.open "POST","http://ServerName/VDir/TstResult.asp",false

oReq.setRequestHeader "Content-Length",Len(strA)

oReq.setRequestHeader "CONTENT-TYPE","application/x-www-form-urlencoded"

oReq.send strA

msgbox bytes2BSTR(oReq.responseBody)

</SCRIPT>

//readyState是xmlhttp返回數據的進度,0=載入中,1=未初始化,2=已載入,3=運行中,4=完成

高級應用(二)~~~~~~~~~~~~~~~~

//組件是否安裝

isComponentInstalled("{6B053A4B-A7EC-4D3D-4567-B8FF8A1A5739}", "componentID"))

//檢查網頁是否存在

function CheckURL(URL)

{

  var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");

  xmlhttp.Open("GET",URL, false);

  try

  {  

    xmlhttp.Send();  

    var result = xmlhttp.status;

  }

  catch(e) {return(false); }

  if(result==200)

  {  

    return true;

  }

  xmlhttp = null;

  return false;

}

//連接數據庫

<script language="javascript">

  //用 JavaScript 寫服務器端連接數據庫的代碼示例

  var conn = new ActiveXObject("ADODB.Connection");

  conn.Open("Provider=SQLOLEDB.1; Data Source=localhost; User ID=sa; "

    +"Password=; Initial Catalog=pubs");

  var rs = new ActiveXObject("ADODB.Recordset");

  var sql="select * from authors";

  rs.open(sql, conn);

shtml = "<table width='100%' border=1>";

shtml +="<tr bgcolor='#f4f4f4'><td>au_id</td><td>au_lname</td><td>au_fname</td><td>phone</td><td>address</td><td> city</td><td>state</td><td>zip</td></tr>";

  while(!rs.EOF)

  {

shtml += "<tr><td>" + rs("au_id") + "</td><td>" + rs("au_lname") + "</td><td>" + rs("au_fname") + "</td><td>" + rs("phone") + "</td><td>" + rs("address") + "</td><td>" + rs("city") + "</td><td>" + rs("state") + "</td><td>" + rs("zip") + "</td></tr>";

rs.moveNext;

  }

  shtml += "</table>";

  document.write(shtml);

  rs.close();  

  rs = null;  

  conn.close();  

  conn = null;

</script>

//使用數據島

<html>

<body>

srno:<input type=text datasrc=#xmldate DataFLD=srno size="76"><BR>

times:<input type=text datasrc=#xmldate DataFLD=times size="76"><BR>

<input id="first" TYPE=button value="<< 第一條記錄" onclick="xmldate.recordset.moveFirst()">

<input id="prev" TYPE=button value="<上一條記錄" onclick="xmldate.recordset.movePrevious()">   

<input id="next" TYPE=button value="下一條記錄>" onclick="xmldate.recordset.moveNext()">   

<input id="last" TYPE=button value="最後一條記錄>>" onclick="xmldate.recordset.moveLast()">   

<input id="Add" TYPE=button value="添加新記錄" onclick="xmldate.recordset.addNew()">   

<XML ID="xmldate">

<infolist>

<info ><srno>20041025-01</srno><times>null</times></info>

<info ><srno>20041101-09</srno><times>2004年10月1日2點22分0秒</times></info>

</infolist>

</XML>

</body>

</html>

//獲得參數

<body>

<a href="javascript:location.href=location.href + '?a=1&b=2'">search</a>

<script language="JavaScript">

<!--

var a = location.search.substr(1);

if(a.length>0)

{

var re = /([^&]*?)\=([^&]*)/g

var s = a.match(re);

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

{

  alert(s);

  alert(s.split("=")[1]);

}

}

//-->

</script>

</body>

//可編輯SELECT

<input type=text name=re_name style="width:100px;height:21px;font-size:10pt;"><span style="width:18px;border:0px solid red;"><select name="r00" style="margin-left:-100px;width:118px; background-color:#FFEEEE;" onChange="document.all.re_name.value=this.value;">

                <option value="1">11111111<option>

                <option value="2">222222</option>

                <option value="3">333333</option>

              </select>

              </span>

//設置光標位置

function getCaret(textbox)

{

var control = document.activeElement;

textbox.focus();

var rang = document.selection.createRange();

  rang.setEndPoint("StartToStart",textbox.createTextRange())

control.focus();

return rang.text.length;

}

function setCaret(textbox,pos)

{

try

{

  var r =textbox.createTextRange();

   r.moveStart('character',pos);

   r.collapse(true);

   r.select();

}

catch(e)

{}

}

function selectLength(textbox,start,len)

{

try

{

  var r =textbox.createTextRange();

  

  r.moveEnd('character',len-(textbox.value.length-start));

  r.moveStart('character',start);

   

  r.select();

}

catch(e)

{//alert(e.description)}

}

function insertAtCaret(textbox,text)

{

textbox.focus();

document.selection.createRange().text = text;

}

//頁內查找

function findInPage(str)

{

var txt, i, found,n = 0;

if (str == "")

{

  return false;

}

txt = document.body.createTextRange();

for (i = 0; i <= n && (found = txt.findText(str)) != false; i++)

{

  txt.moveStart("character", 1);

  txt.moveEnd("textedit");

}

if (found)

{

  txt.moveStart("character", -1);

  txt.findText(str);

  txt.select();

  txt.scrollIntoView();

  n++;   

}

else

{

  if (n > 0)

  {

   n = 0;

   findInPage(str);

  }

  else

  {

   alert(str + "...            您要找的文字不存在。\n \n請試着輸入頁面中的關鍵字再次查找!");

  }

}

return false;

}

//操作EXECL

<script language="javascript">

function jStartExcel() {

var xls = new ActiveXObject ( "Excel.Application" );

xls.visible = true;

var newBook = xls.Workbooks.Add;

newBook.Worksheets.Add;

newBook.Worksheets(1).Activate;

xls.ActiveWorkBook.ActiveSheet.PageSetup.Orientation = 2;

xls.ActiveWorkBook.ActiveSheet.PageSetup.PaperSize = 5;

newBook.Worksheets(1).Columns("A").columnwidth=50;

newBook.Worksheets(1).Columns("A").WrapText = true;

newBook.Worksheets(1).Columns("B").columnwidth=50;

newBook.Worksheets(1).Columns("B").WrapText = true;

newBook.Worksheets(1).Range("A1:B1000").NumberFormat = "0";

newBook.Worksheets(1).Range("A1:B1000").HorizontalAlignment = -4131;

newBook.Worksheets(1).Cells(1,1).Interior.ColorIndex="15";

newBook.Worksheets(1).Cells(1,1).value="First Column, First Cell";

newBook.Worksheets(1).Cells(2,1).value="First Column, Second Cell";

newBook.Worksheets(1).Cells(1,2).value="Second Column, First Cell";

newBook.Worksheets(1).Cells(2,2).value="Second Column, Second Cell";

newBook.Worksheets(1).Name="My First WorkSheet";

}

</script>

//自定義提示條

<a href="#" title="這是提示">tip</a>

<script Language="JavaScript">

//***********默認設置定義.*********************

tPopWait=50;//停留tWait豪秒後顯示提示。

tPopShow=5000;//顯示tShow豪秒後關閉提示

showPopStep=20;

popOpacity=99;

//***************內部變量定義*****************

sPop=null;

curShow=null;

tFadeOut=null;

tFadeIn=null;

tFadeWaiting=null;

document.write("<style type='text/css'id='defaultPopStyle'>");

document.write(".cPopText {  background-color: #F8F8F5;color:#000000; border: 1px #000000 solid;font-color: font-size: 12px; padding-right: 4px; padding-left: 4px; height: 20px; padding-top: 2px; padding-bottom: 2px; filter: Alpha(Opacity=0)}");

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

document.write("<div id='dypopLayer' style='position:absolute;z-index:1000;' class='cPopText'></div>");

function showPopupText(){

var o=event.srcElement;

MouseX=event.x;

MouseY=event.y;

if(o.alt!=null && o.alt!=""){o.dypop=o.alt;o.alt=""};

        if(o.title!=null && o.title!=""){o.dypop=o.title;o.title=""};

if(o.dypop!=sPop) {

sPop=o.dypop;

clearTimeout(curShow);

clearTimeout(tFadeOut);

clearTimeout(tFadeIn);

clearTimeout(tFadeWaiting);

if(sPop==null || sPop=="") {

dypopLayer.innerHTML="";

dypopLayer.style.filter="Alpha()";

dypopLayer.filters.Alpha.opacity=0;

}

else {

if(o.dyclass!=null) popStyle=o.dyclass  

else popStyle="cPopText";

curShow=setTimeout("showIt()",tPopWait);

}

}

}

function showIt(){

dypopLayer.className=popStyle;

dypopLayer.innerHTML=sPop;

popWidth=dypopLayer.clientWidth;

popHeight=dypopLayer.clientHeight;

if(MouseX+12+popWidth>document.body.clientWidth) popLeftAdjust=-popWidth-24

else popLeftAdjust=0;

if(MouseY+12+popHeight>document.body.clientHeight) popTopAdjust=-popHeight-24

else popTopAdjust=0;

dypopLayer.style.left=MouseX+12+document.body.scrollLeft+popLeftAdjust;

dypopLayer.style.top=MouseY+12+document.body.scrollTop+popTopAdjust;

dypopLayer.style.filter="Alpha(Opacity=0)";

fadeOut();

}

function fadeOut(){

if(dypopLayer.filters.Alpha.opacity<popOpacity) {

dypopLayer.filters.Alpha.opacity+=showPopStep;

tFadeOut=setTimeout("fadeOut()",1);

}

else {

dypopLayer.filters.Alpha.opacity=popOpacity;

tFadeWaiting=setTimeout("fadeIn()",tPopShow);

}

}

function fadeIn(){

if(dypopLayer.filters.Alpha.opacity>0) {

dypopLayer.filters.Alpha.opacity-=1;

tFadeIn=setTimeout("fadeIn()",1);

}

}

document.onmouseover=showPopupText;

</script>

//插入文字

document.onclick =function(){  

var oSource = window.event.srcElement;  

if(oSource.tagName!="DIV")  

return false;  

var sel = document.selection;  

if (sel!=null) {  

var rng = sel.createRange();  

if (rng!=null)  

rng.pasteHTML("<font color=red>插入文字</font>");  

}  

}  

//netscapte下操作xml

doc = new ActiveXObject("Msxml2.DOMDocument");

doc = new ActiveXObject("Microsoft.XMLDOM")

->>

doc = (new DOMParser()).parseFromString(sXML,'text/xml')

//禁止FSO

1.註銷組件

regsvr32 /u scrrun.dll

2.修改PROGID  

HKEY_CLASSES_ROOT\Scripting.FileSystemObject

Scripting.FileSystemObject

3.對於使用object的用戶,修改HKEY_CLASSES_ROOT\Scripting.

//省略號

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

            overflow: hidden; text-overflow:ellipsis">

<NOBR>就是比如有一行文字,很長,表格內一行顯示不下.</NOBR>

</DIV>

//判斷鍵值

<html>

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

<head>

<script language="javascript">

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

   

function keyDown(e)

{

if(!ie)

{

  var nkey=e.which;

  var iekey='現在是ns瀏覽器';

  var realkey=String.fromCharCode(e.which);

}

if(ie)

{

  var iekey=event.keyCode;

  var nkey='現在是ie瀏覽器';

  var realkey=String.fromCharCode(event.keyCode);

  if(event.keyCode==32){realkey='\' 空格\''}

  if(event.keyCode==13){realkey='\' 回車\''}

  if(event.keyCode==27){realkey='\' Esc\''}

  if(event.keyCode==16){realkey='\' Shift\''}

  if(event.keyCode==17){realkey='\' Ctrl\''}

  if(event.keyCode==18){realkey='\' Alt\''}

}

alert('ns瀏覽器中鍵值:'+nkey+'\n'+'ie瀏覽器中鍵值:'+iekey+'\n'+'實際鍵爲'+realkey);

}

document.onkeydown = keyDown;

</script>

</head>

<body>

//Javascript Document.

<hr>

<center>

<h3>請按任意一個鍵。。。。</h3>

</center>

</body>

</html>

//檢測media play版本

<IE:clientCaps ID="oClientCaps" style="{behavior:url(#default#clientcaps)}" />

<SCRIPT>

var flash="";

    WMPVersion= oClientCaps.getComponentVersion("{22D6F312-B0F6-11D0-94AB-0080C74C7E95}","ComponentID");  

    if (WMPVersion != "") {

    flash = "";

    var version = WMPVersion.split(",");

    var i;

    for (i = 0; i < version.length; i++) {

      if (i != 0)

    flash += ".";

      flash += version;

    }

     document.write("您的Windows Media Player 版本是:"+flash+"<p>");

  }

</SCRIPT>

//圖象按比例

<script language="JavaScript">

<!--

//圖片按比例縮放

var flag=false;

function DrawImage(ImgD){

var image=new Image();

var iwidth = 80;  //定義允許

var iheight = 80;  //定義允許圖片高度

image.src=ImgD.src;

if(image.width>0 && image.height>0){

flag=true;

if(image.width/image.height>= iwidth/iheight){

  if(image.width>iwidth){   

  ImgD.width=iwidth;

  ImgD.height=(image.height*iwidth)/image.width;

  }else{

  ImgD.width=image.width;   

  ImgD.height=image.height;

  }

  ImgD.alt=image.width+"×"+image.height;

  }

else{

  if(image.height>iheight){   

  ImgD.height=iheight;

  ImgD.width=(image.width*iheight)/image.height;   

  }else{

  ImgD.width=image.width;   

  ImgD.height=image.height;

  }

  ImgD.alt=image.width+"×"+image.height;

  }

}

}  

//-->

</script>

<img src=".." onload = "DrawImage(this)">

//細線SELECT

<span style="border:1px solid #000000; position:absolute; overflow:hidden;" >

<select style="margin:-2px;">

<option>1111</option>

<option>11111111111111</option>

<option>111111111</option>

</select></span>

//Import

function Import() {

for( var i=0; i<arguments.length; i++ ) {

  var file = arguments;

  if ( file.match(/\.js$/i))  

   document.write('<script type=\"text/javascript\" src=\"' + file + '\"></sc' + 'ript>');

  else

   document.write('<style type=\"text/css\">@import \"' + file + '\" ;</style>');

}

};

//js枚舉

function getComputerName()

{

var objWMIService = GetObject("Winmgmts:root\cimv2");

for(e = new Enumerator(objWMIService) ; !e.atEnd() ; e.moveNext())

{

    var getComputer = e.item();

    return getComputer.Name;

}

}

//條件編譯

<script language=javascript>

/*@cc_on @*/

/*@if (@_win32 && @_jscript_version>5)

function window.confirm(str)

{

    execScript("n = msgbox('"+ str +"', 257)", "vbscript");

    return(n == 1);

}

@end @*/

</script>

//取得innerText

<SCRIPT LANGUAGE="JavaScript">

<!--

var xmlDoc = new ActiveXObject("Msxml2.DOMDocument.4.0");

var currNode;

xmlDoc.async = false;

xmlDoc.async = false;

xmlDoc.loadXML("<TABLENAME>      你好你阿三    大法     司法等四              </TABLENAME>");

currNode = xmlDoc.documentElement;

   

  var s = currNode.xml;

  var r = /\<([^\>\s]*?)[^\>]*?\>([^\<]*?)\<\/\1\>/

  var b = s.replace(r,"$2");

  alert(b);

//-->

</SCRIPT>

//mergeAttributes 複製所有讀/寫標籤屬性到指定元素。

<SCRIPT>

function fnMerge(){

oSource.children[1].mergeAttributes(oSource.children[0]);

}

</SCRIPT>

<SPAN ID=oSource>

<DIV

ID="oDiv"

ATTRIBUTE1="true"

ATTRIBUTE2="true"

onclick="alert('click');"

onmouseover="this.style.color='#0000FF';"

onmouseout="this.style.color='#000000';"

>

This is a sample <B>DIV</B> element.

</DIV>

<DIV ID="oDiv2">

This is another sample <B>DIV</B> element.

</DIV>

</SPAN>

<INPUT

TYPE="button"

VALUE="Merge Attributes"

onclick="fnMerge()"

>

JavaScript[對象.屬性]集錦

SCRIPT 標記  

用於包含javascript代碼.  

語法  

屬性  

LANGUAGE 定義腳本語言  

SRC 定義一個URL用以指定以.JS結尾的文件

windows對象  

每個HTML文檔的頂層對象.  

屬性  

frames[] 子楨數組.每個子楨數組按源文檔中定義的順序存放.  

feames.length 子楨個數.  

self 當前窗口.  

parent 父窗口(當前窗口是中一個子窗口).  

top 頂層窗口(是所有可見窗口的父窗口).  

status 瀏覽器狀態窗口上的消息.  

defaultStatus 當status無效時,出現在瀏覽器狀態窗口上的缺省消息.  

name 內部名,爲由window.open()方法打開的窗口定義的名字.  

方法  

alert("message") 顯示含有給定消息的"javascript Alert"對話框.  

confirm("message") 顯示含有給定消息的"Confirm"對話框(有一個OK按鈕和一個Cancel按鈕).如果用戶單擊OK返回true,否則返回false.  

prompt("message") 顯示一個"prompt"對話框,要求用戶根據顯示消息給予相應輸入.  

open("URL","name") 打開一個新窗口,給予一個指定的名字.  

close() 關閉當前窗口.

frame對象  

它是整個瀏覽器窗口的子窗口,除了status,defaultStatus,name屬性外,它擁有window對象的全部屬性.  

location對象  

含有當前URL的信息.  

屬性  

href 整個URL字符串.  

protocol 含有URL第一部分的字符串,如http:  

host 包含有URL中主機名:端口號部分的字符串.如//www.cenpok.net/server/  

hostname 包含URL中主機名的字符串.如http://www.cenpok.net  

port 包含URL中可能存在的端口號字符串.  

pathname URL中"/"以後的部分.如~list/index.htm  

hash "#"號(CGI參數)之後的字符串.  

search "?"號(CGI參數)之後的字符串.  

document對象

含有當前文檔信息的對象.

屬性

title 當前文檔標題,如果未定義,則包含"Untitled".

location 文檔的全URL.

lastModified 含有文檔最後修改日期.

referrer 調用者URL,即用戶是從哪個URL鏈接到當前頁面的.

bgColor 背景色(#xxxxxx)

fgColor 前景文本顏色.

linkColor 超鏈接顏色.

vlinkColor 訪問過的超鏈顏色.

alinkColor 激活鏈顏色(鼠標按住未放時).

forms[] 文檔中form對象的數組,按定義次序存儲.

forms.length 文檔中的form對象數目.

links[] 與文檔中所有HREF鏈對應的數組對象,按次序定義存儲.

links.length 文檔中HREF鏈的數目.

anchors[] 錨(...)數組,按次序定義存儲.

anchors.length 文檔中錨的數目.

方法

write("string") 將字符串突出給當前窗口.(字符串可以含有HTML標記)

writeln("string") 與write()類似,在結尾追加回車符,只在預定格式文本中(...或...)生效.

clear() 清當前窗口.

close() 關閉當前窗口.

form對象

屬性

name

中的NAME屬性的字符串值.

method 中METHOD屬性的類值,"0"="GET" ,"1"="POST" .

action 中ACTION屬性的字符串值.

target 表格數據提交的目標,與標記中相應屬性一致.

elements[index] elements屬性包含form中的各個元素.

length 表格中的元素個數.

方法

submit() 提交表格.

事件處理器onSubmit() 用戶單擊一個定義好的按鈕提交form時運行的代碼.

text和textarea對象

屬性

name NAME屬性的字符串值.

value 域內容的字符串值.

defaultValue 域內容的初始字符串值.

方法

focus() 設置對象輸入焦點.

blur() 從對象上移走輸入焦點.

select() 選定對象的輸入區域.

事件處理器

onFocus 當輸入焦點進入時執行.

onBlur 當域失去焦點時執行.

onSelect 當域中有部分文本被選定時執行.

onChange 當域失去焦點且域值相對於onFocus執行有所改變時執行.

複選框(checkbox)對象

屬性

name NAME屬性的字符串值.

value 複選框內容的字符串值.如果設置了,則爲"on",否則爲"off".

checked 複選框內容的布爾值.如果設置了,則爲true,否則爲false .

defaultChecked 反映(CHECKED)屬性的布爾值(缺省狀態).

方法

click() 選定複選框,並使之狀態爲"on".

事件處理器

onClick 當用戶單擊Checkbox時執行.

單選按鈕(radio)對象

屬性

name NAME屬性的字符串值.

length radio對象中單選按鈕的個數.

value VALUE屬性的字符串值.

checked 布爾值,按下爲true,否則爲false .

defaultChecked 反映CHECKED屬性值的布爾值.

方法

click() 選定單選按鈕.

事件處理器

onClick 當單選按鈕被選定時執行.

select對象

屬性

length select對象中對象的個數.

name 由NAME=屬性定義的select對象的內部名.

selectedIndex select對象中當前被選option的下標.

options 該屬性對應於在HTML中定義select對象時標記中的內容,它有如下屬性:

text 標記後的文本串.

value VALUE屬性的值,當Submit按鈕被按下時,該值被提交.

defaultSelected 反映標記的SELECTED屬性的布爾值.

selected 反映option的當前選擇狀態的布爾值.

事件處理器

onFocus 當輸入焦點進入域時執行.

onBlur 當域失去輸入焦點時執行.

onChange 當域失去焦點且如果域的值相對於onFocus執行時有所改變,則執行onChange.

Button對象

表格中有三種類型按鈕,由標記中的TYPE屬性定義:

.submit (type="SUBMIT")

.reset (type="RESET")

.custom (type="BUTTON")

所有按鈕對象都有如下成分:

屬性

value VALUE屬性的字符串值.

name NAME屬性的字符串值.

方法

click() 選定按鈕

事件處理器

onClick 當按鈕被單擊時執行.

submit和reset對象

屬性

value VALUE=屬性的內容.

name NAME=屬性的內容.

方法

click() 選定按鈕

事件處理器

onClick 當按鈕被單擊時執行.

password對象

屬性

defaultValue VALUE=屬性的內容.

name NAME=屬性的內容.

value 目前輸入password域的數據.

方法

focus() 將焦點帶入password域.

blur 將焦點從password域移出.

select() 選定password域中的當前數據,以備修改.

navigator對象

該對象用於確定用戶訪問時使用的Navigator版本.

屬性

appCodeName 相對於用戶瀏覽器的"codename"

appName 相對於用戶瀏覽器的實際名字.

appVersion 相對於用戶瀏覽器的版本號.

userAgent 該屬性反映用戶瀏覽器的全部信息.

string對象

string對象爲操作字符串的內容提供了很多方法.

屬性

length 字符串的長度,即字符串中字符的個數.

方法

big(),blink(),bold(),fixed(),italics(),small(),sub(),strike(),sup(),fontColor(color),fontSize(size)

以上方法爲字符串增加相應的HTML標記.

charAt(index) 返回字符串中index處的字符.

indexOf(searchValue,[fromIndex]) 該方法在字符串中尋找第一次出現的searchValue.如果給定了fromIndex,則從 字符串內該位置開始搜索,當searchValue找到後,返回該串第一個字符的位置.

lastIndexOf(searchValue,[fromIndex]) 從字符串的尾部向前搜索searchValue,並報告找到的第一個實例.

substring(indexA,indexB) 獲取自indexA到indexB的子串.

toLowerCase(),toUpperCase() 將字符串中所有字符全部轉換成大寫,小寫.

Date對象

要使用Date對象,必須先生成一個Date實例:

變量名=new Date();

方法

getDay(),getDate(),getHours(),getMinutes(),getMonth(),getSeconds(),getTime(),

getTimeZoneOffset(),getYear()

還有setDay... ...

toGMTString() 用GMT格式返回當前時間. (Sun,12 Feb 1999 14:19:22 GMT)

toLocaleString 用locale格式返回當前時間. (03/11/99 14:19:22)

parse(date) 將普通date字符串轉換成豪秒形式,從而給setTime()做參數.

Math對象

屬性

LN10 (10的自然對數)

PI (3.1415926...)

SQRT1_2 (1/2的平方根)

方法

abs(x) 返回x的絕對值

acos(x) 返回x的arc cosine值

asin(x) 返回x的arc sin值

atan(x) 返回x的arc tangent值

ceil(x) 返回大於等於x的最小整數

cos(x) 返回x的cosine值

exp(x) 返回e的x次方

floor(x) 返回小於等於x的最大整數

log(x) 返回x的

max(x,y) 返回x,y中的大值

min(x,y) 返回x,y中的小值

pow(x,y) 返回x的y次方

round(x) 舍入到最近整數,(小於或等於0.5小數捨去)

sin(x) 返回x的sin值

sqrt(x) 返回x的平方根

tan(x) 返回x的tangent值

彈窗代碼彙總

【0、超完美彈窗代碼 】

功能:5小時彈一次+背後彈出+自動適應不同分辯率+準全屏顯示

代碼:

<script>

function openwin(){

window.open(http://www.6882.com,"pop1","width="+(window.screen.width-15)+",height="+(window.screen.height-170)+",left=0,top=0,toolbar=yes,menubar=yes,scrollbars=yes,resizable=yes,location=yes,status=yes")

setTimeout("focus();",5);

}

function get_cookie(Name) {

var search = Name + "="

var return&#118alue = "";

if (documents&#46cookie.length > 0) {

offset = documents&#46cookie.indexOf(search)

if (offset != -1) {

offset += search.length

end = documents&#46cookie.indexOf(";", offset);

if (end == -1)

end = documents&#46cookie.length;

return&#118alue=unescape(documents&#46cookie.substring(offset, end))

}

}

return return&#118alue;

}

function Set()

{

  var Then = new Date()    

  Then.setTime(Then.getTime() + 5*60*60*1000 )

  documents&#46cookie = "popped1=yes;expires="+ Then.toGMTString()

}

function loadpopup(){

if (get_cookie('popped1')=='')

{

openwin()

Set()

}

}

setTimeout("loadpopup()",5);

</script>

【1、最基本的彈出窗口代碼】

其實代碼非常簡單:

<script language="&#106avascript">

<!--

window.open ('page.html')

-->

</script>

因爲着是一段&#106avascripts代碼,所以它們應該放在<script language="&#106avascript">標籤和</script>之間。<!-- 和 -->是對一些版本低的瀏覽器起作用,在這些老瀏覽器中不會將標籤中的代碼作爲文本顯示出來。要養成這個好習慣啊。

window.open ('page.html') 用於控制彈出新的窗口page.html,如果page.html不與主窗口在同一路徑下,前面應寫明路徑,絕對路徑(http://)和相對路徑(../)均可。用單引號和雙引號都可以,只是不要混用。

這一段代碼可以加入html的任意位置,<head>和</head>之間可以,<body>間</body>也可以,越前越早執行,尤其是頁面代碼長,又想使頁面早點彈出就儘量往前放。

【2、經過設置後的彈出窗口】

下面再說一說彈出窗口的設置。只要再往上面的代碼中加一點東西就可以了。

我們來定製這個彈出的窗口的外觀,尺寸大小,彈出的位置以適應該頁面的具體情況。

<script language="&#106avascript">

<!--

window.open ('page.html', 'newwindow', 'height=100, width=400, top=0,left=0, toolbar=no, menubar=no, scrollbars=no, resizable=no,location=no, status=no')

//寫成一行

-->

</script>

參數解釋:

<script language="&#106avascript"> js腳本開始;

window.open 彈出新窗口的命令;

'page.html' 彈出窗口的文件名;

'newwindow' 彈出窗口的名字(不是文件名),非必須,可用空''代替;

height=100 窗口高度;

width=400 窗口寬度;

top=0 窗口距離屏幕上方的象素值;

left=0 窗口距離屏幕左側的象素值;

toolbar=no 是否顯示工具欄,yes爲顯示;

menubar,scrollbars 表示菜單欄和滾動欄。

resizable=no 是否允許改變窗口大小,yes爲允許;

location=no 是否顯示地址欄,yes爲允許;

status=no 是否顯示狀態欄內的信息(通常是文件已經打開),yes爲允許;

</script> js腳本結束

【3、用函數控制彈出窗口】

下面是一個完整的代碼。

<html>

<head>

<script language="&#106avascript">

<!--

function openwin() { window.open ("page.html", "newwindow", "height=100, width=400, toolbar=

no, menubar=no, scrollbars=no, resizable=no, location=no, status=no"

//寫成一行

}

//-->

</script>

</head>

<body >

...任意的頁面內容...

</body>

</html>

這裏定義了一個函數openwin(),函數內容就是打開一個窗口。在調用它之前沒有任何用途。

怎麼調用呢?

方法一:<body > 瀏覽器讀頁面時彈出窗口;

方法二:<body > 瀏覽器離開頁面時彈出窗口;

方法三:用一個連接調用:

<a href="#" _fcksavedurl=""#"" &#111nclick="openwin()">打開一個窗口</a>

注意:使用的“#”是虛連接。

方法四:用一個按鈕調用:

<input type="button" &#111nclick="openwin()" &#118alue="打開窗口">

【4、同時彈出2個窗口】

對源代碼稍微改動一下:

<script language="&#106avascript">

<!--

function openwin()

{ window.open ("page.html", "newwindow", "height=100, width=100, top=0,left=0,toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, status=no"

//寫成一行

window.open ("page2.html", "newwindow2", "height=100, width=100, top=100, left=100,toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, status=no"

//寫成一行

}

//-->

</script>

爲避免彈出的2個窗口覆蓋,用top和left控制一下彈出的位置不要相互覆蓋即可。最後用上面說過的四種方法調用即可。

注意:2個窗口的name(newwindows和newwindow2)不要相同,或者乾脆全部爲空。ok?

【5、主窗口打開文件1.htm,同時彈出小窗口page.html】

如下代碼加入主窗口<head>區:

<script language="&#106avascript">

<!--

function openwin()

{window.open("page.html","","width=200,height=200"

}

//-->

</script>

加入<body>區:

<a href="1.htm" &#111nclick="openwin()">open</a>即可。

【6、彈出的窗口之定時關閉控制】

下面我們再對彈出的窗口進行一些控制,效果就更好了。如果我們再將一小段代碼加入彈出的頁面(注意是加入到page.html的html中,可不是主頁面中,否則...),讓它10秒後自動關閉是不是更酷了?

首先,將如下代碼加入page.html文件的<head>區:

<script language="&#106avascript">

function closeit()

{settimeout("self.close()",10000) //毫秒}

</script>

然後,再用<body > 這一句話代替page.html中原有的<body>這一句就可以了。(這一句話千萬不要忘記寫啊!這一句的作用是調用關閉窗口的代碼,10秒鐘後就自行關閉該窗口。)

【7、在彈出窗口中加上一個關閉按鈕】

<form>

<input type='button' &#118alue='關閉' &#111nclick='window.close()'>

</form>

呵呵,現在更加完美了!

【8、內包含的彈出窗口-一個頁面兩個窗口】

上面的例子都包含兩個窗口,一個是主窗口,另一個是彈出的小窗口。

通過下面的例子,你可以在一個頁面內完成上面的效果。

<html>

<head>

<script language="&#106avascript">

function openwin()

{openwindow=window.open("", "newwin", "height=250, width=250,toolbar=no,scrollbars="+scroll+",menubar=no";

//寫成一行

openwindow.document.write("<title>例子</title>"

openwindow.document.write("<body bgcolor=#ffffff>"

openwindow.document.write("<h1>hello!</h1>"

openwindow.document.write("new window opened!"

openwindow.document.write("</body>"

openwindow.document.write("</html>"

openwindow.document.close()}

</script>

</head>

<body>

<a href="#" &#111nclick="openwin()">打開一個窗口</a>

<input type="button" &#111nclick="openwin()" &#118alue="打開窗口">

</body>

</html>

看看 openwindow.document.write()裏面的代碼不就是標準的html嗎?只要按照格式寫更多的行即可。千萬注意多一個標籤或少一個標籤就會出現錯誤。記得用openwindow.document.close()結束啊

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章