javascript技巧大全套

  1 事件源对象 
  2 event.srcElement.tagName 
  3 event.srcElement.type 
  4 捕获释放 
  5 event.srcElement.setCapture();  
  6 event.srcElement.releaseCapture();  
  7 事件按键 
  8 event.keyCode 
  9 event.shiftKey 
 10 event.altKey 
 11 event.ctrlKey 
 12 事件返回值 
 13 event.returnValue 
 14 鼠标位置 
 15 event.x 
 16 event.y 
 17 窗体活动元素 
 18 document.activeElement 
 19 绑定事件 
 20 document.captureEvents(Event.KEYDOWN); 
 21 访问窗体元素 
 22 document.all("txt").focus(); 
 23 document.all("txt").select(); 
 24 窗体命令 
 25 document.execCommand 
 26 窗体COOKIE 
 27 document.cookie 
 28 菜单事件 
 29 document.oncontextmenu 
 30 创建元素 
 31 document.createElement("SPAN");  
 32 根据鼠标获得元素: 
 33 document.elementFromPoint(event.x,event.y).tagName=="TD 
 34 document.elementFromPoint(event.x,event.y).appendChild(ms)  
 35 窗体图片 
 36 document.images[索引] 
 37 窗体事件绑定 
 38 document.onmousedown=scrollwindow; 
 39 元素 
 40 document.窗体.elements[索引] 
 41 对象绑定事件 
 42 document.all.xxx.detachEvent('onclick',a); 
 43 插件数目 
 44 navigator.plugins 
 45 取变量类型 
 46 typeof($js_libpath) == "undefined" 
 47 下拉框 
 48 下拉框.options[索引] 
 49 下拉框.options.length 
 50 查找对象 
 51 document.getElementsByName("r1"); 
 52 document.getElementById(id); 
 53 定时 
 54 timer=setInterval('scrollwindow()',delay); 
 55 clearInterval(timer); 
 56 UNCODE编码 
 57 escape() ,unescape 
 58 父对象 
 59 obj.parentElement(dhtml) 
 60 obj.parentNode(dom) 
 61 交换表的行 
 62 TableID.moveRow(2,1) 
 63 替换CSS 
 64 document.all.csss.href = "a.css"; 
 65 并排显示 
 66 display:inline 
 67 隐藏焦点 
 68 hidefocus=true 
 69 根据宽度换行 
 70 style="word-break:break-all" 
 71 自动刷新 
 72 <meta HTTP-EQUIV="refresh" CONTENT="8;URL=http://c98.yeah.net"> 
 73 简单邮件 
 74 <a  href="mailto:aaa@bbb.com?subject=ccc&body=xxxyyy">  
 75 快速转到位置 
 76 obj.scrollIntoView(true) 
 77  78 <a name="first"> 
 79 <a href="#first">anchors</a> 
 80 网页传递参数 
 81 location.search(); 
 82 可编辑 
 83 obj.contenteditable=true 
 84 执行菜单命令 
 85 obj.execCommand 
 86 双字节字符 
 87 /[^\x00-\xff]/ 
 88 汉字 
 89 /[\u4e00-\u9fa5]/ 
 90 让英文字符串超出表格宽度自动换行 
 91 word-wrap: break-word; word-break: break-all; 
 92 透明背景 
 93 <IFRAME src="1.htm" width=300 height=180 allowtransparency></iframe> 
 94 获得style内容 
 95 obj.style.cssText 
 96 HTML标签 
 97 document.documentElement.innerHTML 
 98 第一个style标签 
 99 document.styleSheets[0] 
100 style标签里的第一个样式 
101 document.styleSheets[0].rules[0] 
102 防止点击空链接时,页面往往重置到页首端。 
103 <a href="javascript:function()">word</a> 
104 上一网页源 
105 asp: 
106 request.servervariables("HTTP_REFERER") 
107 javascript: 
108 document.referrer 
109 释放内存 
110 CollectGarbage(); 
111 禁止右键 
112 document.oncontextmenu = function() { return false;} 
113 禁止保存 
114 <noscript><iframe src="*.htm"></iframe></noscript> 
115 禁止选取<body oncontextmenu="return false" ondragstart="return false" onselectstart ="return false" onselect="document.selection.empty()" oncopy="document.selection.empty()" onbeforecopy="return false"onmouseup="document.selection.empty()>  
116 禁止粘贴 
117 <input type=text onpaste="return false"> 
118 地址栏图标 
119 <link rel="Shortcut Icon" href="favicon.ico"> 
120 favicon.ico 名字最好不变16*16的16色,放虚拟目录根目录下 
121 收藏栏图标 
122 <link rel="Bookmark" href="favicon.ico"> 
123 查看源码 
124 <input type=button value=查看网页源代码 onclick="window.location = 'view-source:'+ 'http://www.csdn.net/'"> 
125 关闭输入法 
126 <input style="ime-mode:disabled"> 
127 自动全选 
128 <input type=text name=text1 value="123" onfocus="this.select()"> 
129 ENTER键可以让光标移到下一个输入框 
130 <input onkeydown="if(event.keyCode==13)event.keyCode=9"> 
131 文本框的默认值 
132 <input type=text value="123" onfocus="alert(this.defaultValue)"> 
133 title换行 
134 obj.title = "123 sdfs " 
135 获得时间所代表的微秒 
136 var n1 = new Date("2004-10-10".replace(/-/g, "\/")).getTime() 
137 窗口是否关闭 
138 win.closed 
139 checkbox扁平 
140 <input type=checkbox style="position: absolute; clip:rect(5px 15px 15px 5px)"><br> 
141 获取选中内容 
142 document.selection.createRange().duplicate().text 
143 自动完成功能 
144 <input  type=text  autocomplete=on>打开该功能  
145 <input  type=text  autocomplete=off>关闭该功能    
146 窗口最大化 
147 <body onload="window.resizeTo(window.screen.width - 4,window.screen.height-50);window.moveTo(-4,-4)"> 
148 无关闭按钮IE 
149 window.open("aa.htm", "meizz", "fullscreen=7"); 
150 统一编码/解码 
151 alert(decodeURIComponent(encodeURIComponent("http://你好.com?as= hehe"))) 
152 encodeURIComponent对":"、"/"、";" 和 "?"也编码 
153 表格行指示 
154 <tr onmouseover="this.bgColor='#f0f0f0'" onmouseout="this.bgColor='#ffffff'"> 
155 
156 //各种尺寸 
157 
158 s  +=  "\r\n网页可见区域宽:"+  document.body.clientWidth;   
159 s  +=  "\r\n网页可见区域高:"+  document.body.clientHeight;   
160 s  +=  "\r\n网页可见区域高:"+  document.body.offsetWeight  +"  (包括边线的宽)";   
161 s  +=  "\r\n网页可见区域高:"+  document.body.offsetHeight  +"  (包括边线的宽)";   
162 s  +=  "\r\n网页正文全文宽:"+  document.body.scrollWidth;   
163 s  +=  "\r\n网页正文全文高:"+  document.body.scrollHeight;   
164 s  +=  "\r\n网页被卷去的高:"+  document.body.scrollTop;   
165 s  +=  "\r\n网页被卷去的左:"+  document.body.scrollLeft;   
166 s  +=  "\r\n网页正文部分上:"+  window.screenTop;   
167 s  +=  "\r\n网页正文部分左:"+  window.screenLeft;   
168 s  +=  "\r\n屏幕分辨率的高:"+  window.screen.height;   
169 s  +=  "\r\n屏幕分辨率的宽:"+  window.screen.width;   
170 s  +=  "\r\n屏幕可用工作区高度:"+  window.screen.availHeight;   
171 s  +=  "\r\n屏幕可用工作区宽度:"+  window.screen.availWidth;   
172 //过滤数字 
173 
174 <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"> 
175  
176 
177 //特殊用途 
178 
179 <input type=button value=导入收藏夹 onclick="window.external.ImportExportFavorites(true,'http://localhost');"> 
180 <input type=button value=导出收藏夹 onclick="window.external.ImportExportFavorites(false,'http://localhost');"> 
181 <input type=button value=整理收藏夹 onclick="window.external.ShowBrowserUI('OrganizeFavorites', null)"> 
182 <input type=button value=语言设置   onclick="window.external.ShowBrowserUI('LanguageDialog', null)"> 
183 <input type=button value=加入收藏夹 onclick="window.external.AddFavorite('http://www.google.com/', 'google')"> 
184 <input type=button value=加入到频道 onclick="window.external.addChannel('http://www.google.com/')"> 
185 <input type=button value=加入到频道 onclick="window.external.showBrowserUI('PrivacySettings',null)"> 
186  
187 
188 //不缓存 
189 
190 <META HTTP-EQUIV="pragma" CONTENT="no-cache"> 
191 <META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate"> 
192 <META HTTP-EQUIV="expires" CONTENT="0"> 
193  
194 
195  
196 
197 
198 
199 //正则匹配 
200  
201 
202 匹配中文字符的正则表达式: [\u4e00-\u9fa5] 
203 匹配双字节字符(包括汉字在内):[^\x00-\xff] 
204 匹配空行的正则表达式:\n[\s| ]*\r 
205 匹配HTML标记的正则表达式:/<(.*)>.*<\/\1>|<(.*) \/>/  
206 匹配首尾空格的正则表达式:(^\s*)|(\s*$)(像vbscript那样的trim函数) 
207 匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)* 
208 匹配网址URL的正则表达式:http://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)? 
209 以下是例子: 
210 利用正则表达式限制网页表单里的文本框输入内容: 
211 用正则表达式限制只能输入中文:onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,''))" 
212 1.用正则表达式限制只能输入全角字符: onkeyup="value=value.replace(/[^\uFF00-\uFFFF]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\uFF00-\uFFFF]/g,''))" 
213 2.用正则表达式限制只能输入数字:onkeyup="value=value.replace(/[^\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))" 
214 3.用正则表达式限制只能输入数字和英文:onkeyup="value=value.replace(/[\W]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))" 
215 //消除图像工具栏 
216 
217 <IMG SRC="mypicture.jpg" HEIGHT="100px" WIDTH="100px" GALLERYIMG="false">  
218 or 
219 <head> 
220 <meta http-equiv="imagetoolbar" content="no"> 
221 </head> 
222  
223 
224 //无提示关闭 
225 
226 
227 function Close() 
228 { 
229  var ua=navigator.userAgent 
230  var ie=navigator.appName=="Microsoft Internet Explorer"?true:false 
231  if(ie) 
232  { 
233       var IEversion=parseFloat(ua.substring(ua.indexOf("MSIE ")+5,ua.indexOf(";",ua.indexOf("MSIE ")))) 
234   if(IEversion< 5.5) 
235   { 
236    var str  = '<object id=noTipClose classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">' 
237        str += '<param name="Command" value="Close"></object>'; 
238        document.body.insertAdjacentHTML("beforeEnd", str); 
239        document.all.noTipClose.Click(); 
240   } 
241       else 
242   { 
243        window.opener =null; 
244        window.close(); 
245       } 
246    } 
247  else 
248  { 
249   window.close() 
250    } 
251 } 
252 //取得控件得绝对位置(1) 
253 
254 
255 <script language="javascript">  
256 function getoffset(e) 
257 {  
258  var t=e.offsetTop;  
259  var l=e.offsetLeft;  
260  while(e=e.offsetParent) 
261  {  
262   t+=e.offsetTop;  
263   l+=e.offsetLeft;  
264  }  
265  var rec = new Array(1); 
266  rec[0]  = t; 
267  rec[1] = l; 
268  return rec 
269 }  
270 </script> 
271 //获得控件的绝对位置(2) 
272 
273 oRect = obj.getBoundingClientRect(); 
274 oRect.left 
275 oRect. 
276 //最小化,最大化,关闭 
277 
278 <object id=min classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">  
279 <param name="Command" value="Minimize"></object>  
280 <object id=max classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">  
281 <param name="Command" value="Maximize"></object>  
282 <OBJECT id=close classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11">  
283 <PARAM NAME="Command" value="Close"></OBJECT>  
284 <input type=button value=最小化 onclick=min.Click()>  
285 <input type=button value=最大化 onclick=max.Click()>  
286 <input type=button value=关闭 onclick=close.Click()>  
287  
288 
289  
290 
291 
292 //光标停在文字最后 
293 
294  
295 
296 <script language="javascript"> 
297 function cc() 
298 { 
299  var e = event.srcElement; 
300  var r =e.createTextRange(); 
301  r.moveStart('character',e.value.length); 
302  r.collapse(true); 
303  r.select(); 
304 } 
305 </script> 
306 <input type=text name=text1 value="123" onfocus="cc()"> 
307 //页面进入和退出的特效 
308 
309 
310 进入页面<meta http-equiv="Page-Enter" content="revealTrans(duration=x, transition=y)"> 
311 推出页面<meta http-equiv="Page-Exit" content="revealTrans(duration=x, transition=y)">  
312 这个是页面被载入和调出时的一些特效。duration表示特效的持续时间,以秒为单位。transition表示使 
313 用哪种特效,取值为1-23: 
314   0 矩形缩小  
315   1 矩形扩大  
316   2 圆形缩小 
317   3 圆形扩大  
318   4 下到上刷新  
319   5 上到下刷新 
320   6 左到右刷新  
321   7 右到左刷新  
322   8 竖百叶窗 
323   9 横百叶窗  
324   10 错位横百叶窗  
325   11 错位竖百叶窗 
326   12 点扩散  
327   13 左右到中间刷新  
328   14 中间到左右刷新 
329   15 中间到上下 
330   16 上下到中间  
331   17 右下到左上 
332   18 右上到左下  
333   19 左上到右下  
334   20 左下到右上 
335   21 横条  
336   22 竖条  
337   23  
338 //网页是否被检索 
339 
340 <meta name="ROBOTS" content="属性值"> 
341   其中属性值有以下一些: 
342   属性值为"all": 文件将被检索,且页上链接可被查询; 
343   属性值为"none": 文件不被检索,而且不查询页上的链接; 
344   属性值为"index": 文件将被检索; 
345   属性值为"follow": 查询页上的链接; 
346   属性值为"noindex": 文件不检索,但可被查询链接; 
347   属性值为"nofollow":  
348  
349 
350 
351 //打印分页 
352 
353 <p  style="page-break-after:always">page1</p>   
354 <p  style="page-break-after:always">page2</p>   
355  
356 
357 
358 //设置打印 
359 
360 
361 <object id="factory" style="display:none" viewastext 
362   classid="clsid:1663ed61-23eb-11d2-b92f-008048fdd814" 
363   codebase="http://www.meadroid.com/scriptx/ScriptX.cab#Version=5,60,0,360" 
364 ></object> 
365 <input type=button value=页面设置 onclick="factory.printing.PageSetup()"> 
366 <input type=button value=打印预览 onclick="factory.printing.Preview()"> 
367   
368 <script language=javascript> 
369 function window.onload() 
370 { 
371    // -- advanced features 
372    factory.printing.SetMarginMeasure(2) // measure margins in inches 
373    factory.printing.SetPageRange(false, 1, 3) // need pages from 1 to 3 
374    factory.printing.printer = "HP DeskJet 870C" 
375    factory.printing.copies = 2 
376    factory.printing.collate = true 
377    factory.printing.paperSize = "A4" 
378    factory.printing.paperSource = "Manual feed" 
379    // -- basic features 
380    factory.printing.header = "居左显示&b居中显示&b居右显示页码,第&p页/共&P页" 
381    factory.printing.footer = "(自定义页脚)" 
382    factory.printing.portrait = false 
383    factory.printing.leftMargin = 0.75 
384    factory.printing.topMargin = 1.5 
385    factory.printing.rightMargin = 0.75 
386    factory.printing.bottomMargin = 1.5 
387 } 
388 function Print(frame) { 
389   factory.printing.Print(true, frame) // print with prompt 
390 } 
391 </script> 
392 <input type=button value="打印本页" onclick="factory.printing.Print(false)"> 
393 <input type=button value="页面设置" onclick="factory.printing.PageSetup()"> 
394 <input type=button value="打印预览" onclick="factory.printing.Preview()"><br> 
395 <a href="http://www.meadroid.com/scriptx/docs/printdoc.htm?static"  target=_blank>具体使用手册,更多信息,点这里</a> 
396   
397 //自带的打印预览 
398 
399 WebBrowser.ExecWB(1,1) 打开  
400 Web.ExecWB(2,1) 关闭现在所有的IE窗口,并打开一个新窗口  
401 Web.ExecWB(4,1) 保存网页  
402 Web.ExecWB(6,1) 打印  
403 Web.ExecWB(7,1) 打印预览  
404 Web.ExecWB(8,1) 打印页面设置  
405 Web.ExecWB(10,1) 查看页面属性  
406 Web.ExecWB(15,1) 好像是撤销,有待确认  
407 Web.ExecWB(17,1) 全选  
408 Web.ExecWB(22,1) 刷新  
409 Web.ExecWB(45,1) 关闭窗体无提示  
410 <style media=print>  
411 .Noprint{display:none;}<!--用本样式在打印时隐藏非打印项目-->  
412 .PageNext{page-break-after: always;}<!--控制分页-->  
413 </style>  
414 <object  id="WebBrowser"  width=0  height=0  classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2">     
415 </object>     
416   
417 <center class="Noprint" > 
418 <input type=button value=打印 onclick=document.all.WebBrowser.ExecWB(6,1)>  
419 <input type=button value=直接打印 onclick=document.all.WebBrowser.ExecWB(6,6)>  
420 <input type=button value=页面设置 onclick=document.all.WebBrowser.ExecWB(8,1)>  
421 </p>  
422 <p> <input type=button value=打印预览 onclick=document.all.WebBrowser.ExecWB(7,1)>  
423 </center> 
424 //去掉打印时的页眉页脚 
425 
426 
427 <script  language="JavaScript">   
428 var HKEY_Root,HKEY_Path,HKEY_Key; 
429 HKEY_Root="HKEY_CURRENT_USER"; 
430 HKEY_Path="\\Software\\Microsoft\\Internet Explorer\\PageSetup\\"; 
431 //设置网页打印的页眉页脚为空 
432 function PageSetup_Null() 
433 { 
434  try 
435  { 
436          var Wsh=new ActiveXObject("WScript.Shell"); 
437   HKEY_Key="header"; 
438   Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,""); 
439   HKEY_Key="footer"; 
440   Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,""); 
441  } 
442  catch(e){} 
443 } 
444 //设置网页打印的页眉页脚为默认值 
445 function  PageSetup_Default() 
446 {   
447  try 
448  { 
449   var Wsh=new ActiveXObject("WScript.Shell"); 
450   HKEY_Key="header"; 
451   Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"&w&b页码,&p/&P"); 
452   HKEY_Key="footer"; 
453   Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"&u&b&d"); 
454  } 
455  catch(e){} 
456 } 
457 </script> 
458 <input type="button" value="清空页码" onclick=PageSetup_Null()> 
459 <input type="button" value="恢复页码" onclick=PageSetup_Default()> 
460 //浏览器验证 
461 
462 
463 function checkBrowser() 
464 {  
465    this.ver=navigator.appVersion  
466    this.dom=document.getElementById?1:0  
467    this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom)?1:0;  
468    this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom)?1:0;  
469    this.ie4=(document.all && !this.dom)?1:0;  
470    this.ns5=(this.dom && parseInt(this.ver) >= 5) ?1:0;  
471    this.ns4=(document.layers && !this.dom)?1:0;  
472    this.mac=(this.ver.indexOf('Mac') > -1) ?1:0;  
473    this.ope=(navigator.userAgent.indexOf('Opera')>-1);  
474    this.ie=(this.ie6 || this.ie5 || this.ie4)  
475    this.ns=(this.ns4 || this.ns5)  
476    this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns5 || this.ns4 || this.mac || this.ope)  
477    this.nbw=(!this.bw)  
478    return this; 
479 } 
480 //计算内容宽和高 
481 
482 <SCRIPT  language="javascript">   
483 function  test(obj)   
484 {   
485        var  range  =  obj.createTextRange();   
486        alert("内容区宽度:  "  +  range.boundingWidth     
487                                                  +  "px\r\n内容区高度:  "  +  range.boundingHeight  +  "px");   
488               
489 }   
490 </SCRIPT>   
491 <BODY>   
492 <Textarea id="txt" height="150">sdf</textarea><INPUT  type="button"  value="计算内容宽度"  onClick="test(txt)">   
493 </BODY> 
494 //无模式的提示框 
495 
496 function modelessAlert(Msg) 
497 { 
498    window.showModelessDialog("javascript:alert(\""+escape(Msg)+"\");window.close();","","status:no;resizable:no;help:no;dialogHeight:height:30px;dialogHeight:40px;"); 
499 } 
500  
501 
502  
503 
504  
505 
506 
507 //屏蔽按键 
508  
509 
510 <html> 
511 <head> 
512   <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
513   <noscript><meta http-equiv="refresh" content="0;url=about:noscript"></noscript> 
514   <title>屏蔽鼠标右键、Ctrl+N、Shift+F10、Alt+F4、F11、F5刷新、退格键</title> 
515 </head> 
516 <body> 
517 <script language="Javascript"><!-- 
518   //屏蔽鼠标右键、Ctrl+N、Shift+F10、F11、F5刷新、退格键 
519   //Author: meizz(梅花雨) 2002-6-18 
520 function document.oncontextmenu(){event.returnValue=false;}//屏蔽鼠标右键 
521 function window.onhelp(){return false} //屏蔽F1帮助 
522 function document.onkeydown() 
523 { 
524   if ((window.event.altKey)&& 
525       ((window.event.keyCode==37)||   //屏蔽 Alt+ 方向键 ← 
526        (window.event.keyCode==39)))   //屏蔽 Alt+ 方向键 → 
527   { 
528      alert("不准你使用ALT+方向键前进或后退网页!"); 
529      event.returnValue=false; 
530   } 
531      /* 注:这还不是真正地屏蔽 Alt+ 方向键, 
532      因为 Alt+ 方向键弹出警告框时,按住 Alt 键不放, 
533      用鼠标点掉警告框,这种屏蔽方法就失效了。以后若 
534      有哪位高手有真正屏蔽 Alt 键的方法,请告知。*/ 
535   if ((event.keyCode==8)  ||                 //屏蔽退格删除键 
536       (event.keyCode==116)||                 //屏蔽 F5 刷新键 
537       (event.ctrlKey && event.keyCode==82)){ //Ctrl + R 
538      event.keyCode=0; 
539      event.returnValue=false; 
540      } 
541   if (event.keyCode==122){event.keyCode=0;event.returnValue=false;}  //屏蔽F11 
542   if (event.ctrlKey && event.keyCode==78) event.returnValue=false;   //屏蔽 Ctrl+n 
543   if (event.shiftKey && event.keyCode==121)event.returnValue=false;  //屏蔽 shift+F10 
544   if (window.event.srcElement.tagName == "A" && window.event.shiftKey)  
545       window.event.returnValue = false;             //屏蔽 shift 加鼠标左键新开一网页 
546   if ((window.event.altKey)&&(window.event.keyCode==115))             //屏蔽Alt+F4 
547   { 
548       window.showModelessDialog("about:blank","","dialogWidth:1px;dialogheight:1px"); 
549       return false; 
550   } 
551 } 
552 </script> 
553 屏蔽鼠标右键、Ctrl+N、Shift+F10、Alt+F4、F11、F5刷新、退格键 
554 </body> 
555 </html> 
556 //屏蔽打印 
557 <style> 
558 @media print{ 
559 * {display:none} 
560 } 
561 </style> 
562 
563 //移动的图层,拖动 
564 
565 
566 1.<span style='position:absolute;200;height:200;background:red' onmousedown=MouseDown(this) onmousemove=MouseMove() onmouseup=MouseUp()>meizz</span> 
567 <script language=javascript> 
568 var Obj; 
569 function MouseDown(obj) 
570 { 
571   Obj=obj; 
572   Obj.setCapture(); 
573   Obj.l=event.x-Obj.style.pixelLeft; 
574   Obj.t=event.y-Obj.style.pixelTop; 
575 } 
576 function MouseMove() 
577 { 
578   if(Obj!=null) 
579   { 
580     Obj.style.left = event.x-Obj.l; 
581     Obj.style.top = event.y-Obj.t; 
582   } 
583 } 
584 function MouseUp() 
585 { 
586   if(Obj!=null) 
587   { 
588     Obj.releaseCapture(); 
589     Obj=null; 
590   } 
591 } 
592 </script> 
593 2. 
594 <div id="myDiv" src="logo.gif" ondrag="doDrag();" onmouseover="this.style.cursor='hand'" style="position:absolute;left=100;top=100;" onmousedown="doMouseDown();"> 
595 <a href="#" onclick="return false"><h1>wlecome</h1></a> 
596 </div> 
597 <script language="JavaScript" type="text/javascript"> 
598 var orgMouseX; 
599 var orgMouseY; 
600 var orgObjX; 
601 var orgObjY; 
602 function doDrag() 
603 { 
604 var myObject=document.all.myDiv; 
605 
606 var x=event.clientX; 
607 var y=event.clientY; 
608 myObject.style.left=x-(orgMouseX-orgObjX); 
609 myObject.style.top=y-(orgMouseY-orgObjY); 
610   
611 } 
612 function doMouseDown() 
613 { 
614 orgMouseX=event.clientX; 
615 orgMouseY=event.clientY; 
616 orgObjX=parseInt(document.all.myDiv.style.left); 
617 orgObjY=parseInt(document.all.myDiv.style.top); 
618 } 
619 
620 </script> 
621   
622 //文档状态改变 
623 
624 
625 <iframe src="a.html" id="f" name="f" scrolling="no" frameborder=0 marginwidth=0 marginheight=0></iframe> 
626 <script> 
627 var doc=window.frames["f"].document; 
628 function s(){ 
629  if (doc.readyState=="complete"){ 
630   document.all.f.style.height=doc.body.scrollHeight 
631   document.all.f.style.width=doc.body.scrollWidth 
632  } 
633 } 
634 doc.onreadystatechange=s 
635 </script> 
636 
637 //刷新后不变的文本框 
638 
639 <HTML> 
640 <HEAD> 
641 <META NAME="save" CONTENT="history"> 
642 <STYLE> 
643    .sHistory {behavior:url(#default#savehistory);} 
644 </STYLE> 
645 </HEAD> 
646 <BODY> 
647 <INPUT class=sHistory type=text id=oPersistInput> 
648 </BODY> 
649 </HTML> 
650  
651 
652 //访问剪贴板 
653 
654 (1)拖拽访问 
655 event.dataTransfer.setData("URL", oImage.src); 
656 sImageURL = event.dataTransfer.getData("URL") 
657 (2)普通访问 
658 window.clipboardData.setData("Text",oSource.innerText); 
659 window.clipboardData.getData("Text"); 
660  
661 
662 //操作COOKIE 
663 
664 
665 function SetCookie(sName, sValue) 
666 { 
667  document.cookie = sName + "=" + escape(sValue) + "; "; 
668 } 
669 function GetCookie(sName) 
670 { 
671  var aCookie = document.cookie.split("; "); 
672  for (var i=0; i < aCookie.length; i++) 
673  { 
674    
675   var aCrumb = aCookie[i].split("="); 
676   if (sName == aCrumb[0])  
677   return unescape(aCrumb[1]); 
678  } 
679   
680 } 
681 function DelCookie(sName) 
682 { 
683 document.cookie = sName + "=" + escape(sValue) + "; expires=Fri, 31 Dec 1999 23:59:59 GMT;"; 
684 } 
685 //setTimeout增加参数 
686 
687 <script> 
688 var _st = window.setTimeout; 
689 window.setTimeout = function(fRef, mDelay) { 
690  if(typeof fRef == 'function'){ 
691   var argu = Array.prototype.slice.call(arguments,2); 
692   var f = (function(){ fRef.apply(null, argu); }); 
693   return _st(f, mDelay); 
694  } 
695  return _st(fRef,mDelay); 
696 } 
697 function test(x){ 
698  alert(x); 
699 } 
700 window.setTimeout(test,1000,'fason'); 
701 </script> 
702 
703 //自定义的apply,call 
704 
705 Function.prototype.apply = function (obj, argu) { 
706  if (obj) obj.constructor.prototype._caller = this;  
707  var argus = new Array(); 
708  for (var i=0;i<argu.length;i++) 
709   argus[i] = "argu[" + i + "]"; 
710  var r; 
711  eval("r = " + (obj ? ("obj._caller(" + argus.join(",") + ");") : ("this(" + argus.join(",") + ");"))); 
712  return r; 
713 }; 
714 Function.prototype.call = function (obj) { 
715  var argu = new Array(); 
716  for (var i=1;i<arguments.length;i++) 
717   argu[i-1] = arguments[i]; 
718  return this.apply(obj, argu); 
719 };        
720 
721 //下载文件 
722 
723 function DownURL(strRemoteURL,strLocalURL) 
724 { 
725  try 
726  { 
727   var xmlHTTP=new ActiveXObject("Microsoft.XMLHTTP"); 
728   xmlHTTP.open("Get",strRemoteURL,false); 
729   xmlHTTP.send(); 
730   var adodbStream=new ActiveXObject("ADODB.Stream"); 
731   adodbStream.Type=1;//1=adTypeBinary 
732   adodbStream.Open(); 
733   adodbStream.write(xmlHTTP.responseBody); 
734   adodbStream.SaveToFile(strLocalURL,2); 
735   adodbStream.Close(); 
736   adodbStream=null; 
737   xmlHTTP=null; 
738    
739  } 
740  catch(e) 
741  { 
742   window.confirm("下载URL出错!"); 
743  } 
744  //window.confirm("下载完成."); 
745 } 
746 
747 //检验连接是否有效 
748 
749 function getXML(URL)  
750 { 
751  var xmlhttp = new ActiveXObject("microsoft.xmlhttp"); 
752  xmlhttp.Open("GET",URL, false);  
753  try 
754  {  
755   xmlhttp.Send(); 
756  } 
757  catch(e){} 
758  finally  
759  { 
760   var result = xmlhttp.responseText; 
761   if(result)  
762   { 
763    if(xmlhttp.Status==200) 
764    { 
765     return(true); 
766    } 
767    else  
768    { 
769     return(false); 
770    } 
771   } 
772   else  
773   { 
774    return(false); 
775   } 
776  } 
777 } 
778 //POST代替FORM 
779 
780 <SCRIPT language="VBScript"> 
781 Function URLEncoding(vstrIn) 
782     strReturn = "" 
783     For i = 1 To Len(vstrIn) 
784         ThisChr = Mid(vStrIn,i,1) 
785         If Abs(Asc(ThisChr)) < &HFF Then 
786             strReturn = strReturn & ThisChr 
787         Else 
788             innerCode = Asc(ThisChr) 
789             If innerCode < 0 Then 
790                 innerCode = innerCode + &H10000 
791             End If 
792             Hight8 = (innerCode  And &HFF00)\ &HFF 
793             Low8 = innerCode And &HFF 
794             strReturn = strReturn & "%" & Hex(Hight8) &  "%" & Hex(Low8) 
795         End If 
796     Next 
797     URLEncoding = strReturn 
798 End Function 
799 Function bytes2BSTR(vIn) 
800     strReturn = "" 
801     For i = 1 To LenB(vIn) 
802         ThisCharCode = AscB(MidB(vIn,i,1)) 
803         If ThisCharCode < &H80 Then 
804             strReturn = strReturn & Chr(ThisCharCode) 
805         Else 
806             NextCharCode = AscB(MidB(vIn,i+1,1)) 
807             strReturn = strReturn & Chr(CLng(ThisCharCode) * &H100 + CInt(NextCharCode)) 
808             i = i + 1 
809         End If 
810     Next 
811     bytes2BSTR = strReturn 
812 End Function 
813 dim strA,oReq 
814 strA = URLEncoding("submit1=Submit&text1=中文") 
815 set oReq = CreateObject("MSXML2.XMLHTTP") 
816 oReq.open "POST","http://ServerName/VDir/TstResult.asp",false 
817 oReq.setRequestHeader "Content-Length",Len(strA) 
818 oReq.setRequestHeader "CONTENT-TYPE","application/x-www-form-urlencoded" 
819 oReq.send strA 
820 msgbox bytes2BSTR(oReq.responseBody) 
821 </SCRIPT> 
822 //readyState是xmlhttp返回数据的进度,0=载入中,1=未初始化,2=已载入,3=运行中,4=完成
823 
824  
825 
826  
827 
828 //组件是否安装 
829 isComponentInstalled("{6B053A4B-A7EC-4D3D-4567-B8FF8A1A5739}", "componentID")) 
830 
831 //检查网页是否存在 
832 
833 
834 function CheckURL(URL) 
835 { 
836   var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); 
837   xmlhttp.Open("GET",URL, false); 
838   try 
839   {  
840     xmlhttp.Send();  
841     var result = xmlhttp.status; 
842   } 
843   catch(e) {return(false); } 
844   if(result==200) 
845   {  
846     return true; 
847   } 
848   xmlhttp = null; 
849   return false; 
850 } 
851 //连接数据库 
852 
853 
854 <script language="javascript"> 
855   //用 JavaScript 写服务器端连接数据库的代码示例 
856   var conn = new ActiveXObject("ADODB.Connection"); 
857   conn.Open("Provider=SQLOLEDB.1; Data Source=localhost; User ID=sa; " 
858     +"Password=; Initial Catalog=pubs"); 
859   var rs = new ActiveXObject("ADODB.Recordset"); 
860   var sql="select * from authors"; 
861   rs.open(sql, conn); 
862  shtml = "<table width='100%' border=1>"; 
863  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>"; 
864   while(!rs.EOF) 
865   { 
866  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>"; 
867  rs.moveNext; 
868   } 
869   shtml += "</table>"; 
870   document.write(shtml); 
871   rs.close();  
872   rs = null;  
873   conn.close();  
874   conn = null; 
875 </script> 
876 //使用数据岛 
877 
878 
879 <html> 
880 <body> 
881 srno:<input type=text datasrc=#xmldate DataFLD=srno size="76"><BR> 
882 times:<input type=text datasrc=#xmldate DataFLD=times size="76"><BR> 
883 <input id="first" TYPE=button value="<< 第一条记录" onclick="xmldate.recordset.moveFirst()"> 
884 <input id="prev" TYPE=button value="<上一条记录" onclick="xmldate.recordset.movePrevious()">   
885 <input id="next" TYPE=button value="下一条记录>" onclick="xmldate.recordset.moveNext()">   
886 <input id="last" TYPE=button value="最后一条记录>>" onclick="xmldate.recordset.moveLast()">    
887 <input id="Add" TYPE=button value="添加新记录" onclick="xmldate.recordset.addNew()">   
888 
889 <XML ID="xmldate"> 
890 <infolist> 
891 <info ><srno>20041025-01</srno><times>null</times></info> 
892 <info ><srno>20041101-09</srno><times>2004年10月1日2点22分0秒</times></info> 
893 </infolist> 
894 </XML> 
895 </body> 
896 </html> 
897 //获得参数 
898 
899 <body> 
900 <a href="javascript:location.href=location.href + '?a=1&b=2'">search</a> 
901 <script language="JavaScript"> 
902 <!-- 
903 var a = location.search.substr(1); 
904 if(a.length>0) 
905 { 
906  var re = /([^&]*?)\=([^&]*)/g 
907  var s = a.match(re); 
908  for(var i= 0;i<s.length;i++) 
909  { 
910   alert(s[i]); 
911   alert(s[i].split("=")[1]); 
912  } 
913 } 
914 //--> 
915 </script> 
916 </body> 
917 //可编辑SELECT 
918 
919 <input type=text name=re_name style="100px;height:21px;font-size:10pt;"><span style="18px;border:0px solid red;"><select name="r00" style="margin-left:-100px;118px; background-color:#FFEEEE;" onChange="document.all.re_name.value=this.value;"> 
920                 <option value="1">11111111<option> 
921                 <option value="2">222222</option> 
922                 <option value="3">333333</option> 
923               </select> 
924               </span>
原文地址:https://www.cnblogs.com/cnlove/p/2836784.html