• javascript小技巧[转]


    总的来说,如果你要找js 的东西,而不看这两篇的话,肯定要多花好多时间!!哈哈!!

    如果你找的javascript的东西的话,建议你 ctrl+F  直接在这个页上找,因为这里80%有你要找的,但是要让你挨着看的话,你就准备看完就去配眼镜!!

        • 事件源对象 
          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"
    • 锚 
      <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 oncontextmenu="return false" ondragstart="return false" onselectstart ="return false" onselect="document.selection.empty()" oncopy="document.selection.empty()" onbeforecopy="return false"onmouseup="document.selection.empty()> 
    • 禁止粘贴 
      <input type=text onpaste="return false">
    • 地址栏图标 
      <link rel="Shortcut Icon" href="favicon.ico"> 
      favicon.ico 名字最好不变16*16的16色,放虚拟目录根目录下
    • 收藏栏图标 
      <link rel="Bookmark" href="favicon.ico">
    • 查看源码 
      <input type=button value=查看网页源代码 onclick="window.location = 'view-source:'+ 'http://www.csdn.net/'">
    • 关闭输入法 
      <input style="ime-mode:disabled">
    • 自动全选 
      <input type=text name=text1 value="123" onfocus="this.select()">
    • ENTER键可以让光标移到下一个输入框 
      <input onkeydown="if(event.keyCode==13)event.keyCode=9">
    • 文本框的默认值 
      <input type=text value="123" onfocus="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 onload="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 onmouseover="this.bgColor='#f0f0f0'" onmouseout="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;  
      • //过滤数字

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

        //访问剪贴板

        (1)拖拽访问 
        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[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("下载完成."); 
        }


        //检验连接是否有效

        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[i]); 
          alert(s[i].split("=")[1]); 
         } 

        //--> 
        </script> 
        </body>

        //可编辑SELECT

        <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; " 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; 
        }

        //书

        <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 {  #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')

        //判断键值

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

        //禁止FSO 

        1.注销组件 
        regsvr32 /u scrrun.dll 
        2.修改PROGID  
        HKEY_CLASSES_ROOT/Scripting.FileSystemObject 
        Scripting.FileSystemObject 
        3.对于使用object的用户,修改HKEY_CLASSES_ROOT/Scripting.


        //省略号

        <DIV STYLE=" 120px; height: 50px; border: 1px solid blue; 
                    overflow: hidden; text-overflow:ellipsis"> 
        <NOBR>就是比如有一行文字,很长,表格内一行显示不下.</NOBR> 
        </DIV>

        //检测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[i]; 
            } 
             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[i]; 
          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()" 
        >
  • 相关阅读:
    装饰器
    返回函数
    用Token令牌维护微服务之间的通信安全的实现
    用Windbg来分析.Net程序的dump
    Windows下docker的安装,将ASP.NET Core程序部署在Linux和Docker中
    StackExchange.Redis学习笔记(五) 发布和订阅
    StackExchange.Redis学习笔记(四) 事务控制和Batch批量操作
    StackExchange.Redis学习笔记(三) 数据库及密码配置 GetServer函数
    StackExchange.Redis学习笔记(二) Redis查询 五种数据类型的应用
    Task及Mvc的异步控制器 使用探索
  • 原文地址:https://www.cnblogs.com/xiaochao12345/p/4086943.html
Copyright © 2020-2023  润新知