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>