JavaScript 經典例子

事件源對象
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.οnmοusedοwn=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" CONTENT="8;URL=http://c98.yeah.net">
簡單郵件
<a  href="mailto:[email protected]?subject=ccc&body=xxxyyy"> 
快速轉到位置
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 οncοntextmenu="return false" οndragstart="return false" onselectstart ="return false" οnselect="document.selection.empty()" οncοpy="document.selection.empty()" onbeforecopy="return false"οnmοuseup="document.selection.empty()> 
禁止粘貼
<input type=text οnpaste="return false">
地址欄圖標
<link rel="Shortcut Icon" href="favicon.ico">
favicon.ico 名字最好不變16*16的16色,放虛擬目錄根目錄下
收藏欄圖標
<link rel="Bookmark" href="favicon.ico">
查看源碼
<input type=button value=查看網頁源代碼 οnclick="window.location = 'view-source:'+ 'http://www.csdn.net/'">
關閉輸入法
<input style="ime-mode:disabled">
自動全選
<input type=text name=text1 value="123" οnfοcus="this.select()">
ENTER鍵可以讓光標移到下一個輸入框
<input οnkeydοwn="if(event.keyCode==13)event.keyCode=9">
文本框的默認值
<input type=text value="123" οnfοcus="alert(this.defaultValue)">
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 οnlοad="window.resizeTo(window.screen.width - 4,window.screen.height-50);window.moveTo(-4,-4)">
無關閉按鈕IE
window.open("aa.htm", "meizz", "fullscreen=7");
統一編碼/解碼
alert(decodeURIComponent(encodeURIComponent("http://你好.com?as= hehe")))
encodeURIComponent對":"、"/"、";" 和 "?"也編碼
表格行指示
<tr οnmοuseοver="this.bgColor='#f0f0f0'" οnmοuseοut="this.bgColor='#ffffff'">

//各種尺寸

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;  
//過濾數字

//特殊用途

//不緩存

 

//正則匹配 匹配中文字符的正則表達式: [/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- ./?%&=]*)?
以下是例子:
利用正則表達式限制網頁表單裏的文本框輸入內容:
用正則表達式限制只能輸入中文:οnkeyup="value=value.replace(/[^/u4E00-/u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^/u4E00-/u9FA5]/g,''))"
1.用正則表達式限制只能輸入全角字符: οnkeyup="value=value.replace(/[^/uFF00-/uFFFF]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^/uFF00-/uFFFF]/g,''))"
2.用正則表達式限制只能輸入數字:οnkeyup="value=value.replace(/[^/d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^/d]/g,''))"
3.用正則表達式限制只能輸入數字和英文:οnkeyup="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.
//最小化,最大化,關閉


//光標停在文字最後
<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" οnfοcus="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 
//網頁是否被檢索


//打印分頁


//設置打印


<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=頁面設置 οnclick="factory.printing.PageSetup()">
<input type=button value=打印預覽 οnclick="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="打印本頁" οnclick="factory.printing.Print(false)">
<input type=button value="頁面設置" οnclick="factory.printing.PageSetup()">
<input type=button value="打印預覽" οnclick="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=打印 οnclick=document.all.WebBrowser.ExecWB(6,1)> 
<input type=button value=直接打印 οnclick=document.all.WebBrowser.ExecWB(6,6)> 
<input type=button value=頁面設置 οnclick=document.all.WebBrowser.ExecWB(8,1)> 
</p> 
<p> <input type=button value=打印預覽 οnclick=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="清空頁碼" οnclick=PageSetup_Null()>
<input type="button" value="恢復頁碼" οnclick=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>

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

<meta name="ROBOTS" content="屬性值">
  其中屬性值有以下一些:
  屬性值爲"all": 文件將被檢索,且頁上鍊接可被查詢;
  屬性值爲"none": 文件不被檢索,而且不查詢頁上的鏈接;
  屬性值爲"index": 文件將被檢索;
  屬性值爲"follow": 查詢頁上的鏈接;
  屬性值爲"noindex": 文件不檢索,但可被查詢鏈接;
  屬性值爲"nofollow": 

<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=最小化 οnclick=min.Click()> 
<input type=button value=最大化 οnclick=max.Click()> 
<input type=button value=關閉 οnclick=close.Click()> 

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

<input type=button value=導入收藏夾 οnclick="window.external.ImportExportFavorites(true,'http://localhost');">
<input type=button value=導出收藏夾 οnclick="window.external.ImportExportFavorites(false,'http://localhost');">
<input type=button value=整理收藏夾 οnclick="window.external.ShowBrowserUI('OrganizeFavorites', null)">
<input type=button value=語言設置   οnclick="window.external.ShowBrowserUI('LanguageDialog', null)">
<input type=button value=加入收藏夾 οnclick="window.external.AddFavorite('http://www.google.com/', 'google')">
<input type=button value=加入到頻道 οnclick="window.external.addChannel('http://www.google.com/')">
<input type=button value=加入到頻道 οnclick="window.external.showBrowserUI('PrivacySettings',null)">

<input type=text οnkeypress="return event.keyCode>=48&&event.keyCode<=57||(this.value.indexOf('.')<0?event.keyCode==46:false)" οnpaste="return !clipboardData.getData('text').match(//D/)" οndragenter="return false">
<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' οnmοusedοwn=MouseDown(this) οnmοusemοve=MouseMove() οnmοuseup=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" οndrag="doDrag();" οnmοuseοver="this.style.cursor='hand'" style="position:absolute;left=100;top=100;" οnmοusedοwn="doMouseDown();">
<a href="#" οnclick="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>

//刷新後不變的文本框

//訪問剪貼板

//操作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[i].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[i] = "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[i];
 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("下載完成.");
}

//檢驗連接是否有效

//組件是否安裝
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="<< 第一條記錄" οnclick="xmldate.recordset.moveFirst()">
<input id="prev" TYPE=button value="<上一條記錄" οnclick="xmldate.recordset.movePrevious()">  
<input id="next" TYPE=button value="下一條記錄>" οnclick="xmldate.recordset.moveNext()">  
<input id="last" TYPE=button value="最後一條記錄>>" οnclick="xmldate.recordset.moveLast()">   
<input id="Add" TYPE=button value="添加新記錄" οnclick="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[i]);
  alert(s[i].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;
}
//書

http://www.itpub.net/attachment.php?s=&postid=1894598
http://www.wrclub.net/down/listdown.aspx?id=1341
//操作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.οnmοuseοver=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

//判斷鍵值

//禁止FSO


1.註銷組件
regsvr32 /u scrrun.dll
2.修改PROGID 
HKEY_CLASSES_ROOT/Scripting.FileSystemObject
Scripting.FileSystemObject
3.對於使用object的用戶,修改HKEY_CLASSES_ROOT/Scripting.

//省略號

//檢測media play版本


//圖象按比例


//細線SELECT


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"
οnclick="alert('click');"
οnmοuseοver="this.style.color='#0000FF';"
οnmοuseοut="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"
οnclick="fnMerge()"
>
以上內容可以隨意轉載,轉載後請註名來源和出處! 出處是 http://ttyp.cnblogs.com/

下一篇是 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值

 

本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/Alibert/archive/2007/10/24/1842548.aspx

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