当前位置: 代码迷 >> JavaScript >> JavaScript 适用脚本,很好,珍藏起来[转贴]
  详细解决方案

JavaScript 适用脚本,很好,珍藏起来[转贴]

热度:524   发布时间:2012-11-22 00:16:41.0
JavaScript 实用脚本,很好,珍藏起来[转贴]

如果你找的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)
  • //过滤数字

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

    ?

    //特殊用途

    <input?type=button?value=导入收藏夹?onclick="window.external.ImportExportFavorites(true,'http://localhost');">
    <input?type=button?value=导出收藏夹?onclick="window.external.ImportExportFavorites(false,'http://localhost');">
    <input?type=button?value=整理收藏夹?onclick="window.external.ShowBrowserUI('OrganizeFavorites',?null)">
    <input?type=button?value=语言设置???onclick="window.external.ShowBrowserUI('LanguageDialog',?null)">
    <input?type=button?value=加入收藏夹?onclick="window.external.AddFavorite('http://www.google.com/',?'google')">
    <input?type=button?value=加入到频道?onclick="window.external.addChannel('http://www.google.com/')">
    <input?type=button?value=加入到频道?onclick="window.external.showBrowserUI('PrivacySettings',null)">

    ?

    //不缓存

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

    ?

    ?

    ?


    //正则匹配

    ?

    匹配中文字符的正则表达式:?[\u4e00-\u9fa5]
    匹配双字节字符(包括汉字在内):[^\x00-\xff]
    匹配空行的正则表达式:\n[\s|?]*\r
    匹配HTML标记的正则表达式:/<(.*)>.*<\/\1>|<(.*)?\/>/?
    匹配首尾空格的正则表达式:(^\s*)|(\s*$)(像vbscript那样的trim函数)
    匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
    匹配网址URL的正则表达式:http://([\w-]+\.)+[\w-]+(/[\w-?./?%&=]*)?
    以下是例子:
    利用正则表达式限制网页表单里的文本框输入内容:
    用正则表达式限制只能输入中文:onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')"?onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,''))"
    1.用正则表达式限制只能输入全角字符:?onkeyup="value=value.replace(/[^\uFF00-\uFFFF]/g,'')"?onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\uFF00-\uFFFF]/g,''))"
    2.用正则表达式限制只能输入数字:onkeyup="value=value.replace(/[^\d]/g,'')?"onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"
    3.用正则表达式限制只能输入数字和英文:onkeyup="value=value.replace(/[\W]/g,'')?"onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"

    //消除图像工具栏

    <IMG?SRC="mypicture.jpg"?HEIGHT="100px"?WIDTH="100px"?GALLERYIMG="false">?
    or
    <head>
    <meta?http-equiv="imagetoolbar"?content="no">
    </head>

    ?

    //无提示关闭

    function?Close()
    {
    ?var?ua=navigator.userAgent
    ?var?ie=navigator.appName=="Microsoft?Internet?Explorer"?true:false
    ?if(ie)
    ?{
    ??????var?IEversion=parseFloat(ua.substring(ua.indexOf("MSIE?")+5,ua.indexOf(";",ua.indexOf("MSIE?"))))
    ??if(IEversion<?5.5)
    ??{
    ???var?str??=?'<object?id=noTipClose?classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">'
    ???????str?+=?'<param?name="Command"?value="Close"></object>';
    ???????document.body.insertAdjacentHTML("beforeEnd",?str);
    ???????document.all.noTipClose.Click();
    ??}
    ??????else
    ??{
    ???????window.opener?=null;
    ???????window.close();
    ??????}
    ???}
    ?else
    ?{
    ??window.close()
    ???}
    }

    //取得控件得绝对位置(1)

    <script?language="javascript">?
    function?getoffset(e)
    {?
    ?var?t=e.offsetTop;?
    ?var?l=e.offsetLeft;?
    ?while(e=e.offsetParent)
    ?{?
    ??t+=e.offsetTop;?
    ??l+=e.offsetLeft;?
    ?}?
    ?var?rec?=?new?Array(1);
    ?rec[0]??=?t;
    ?rec[1]?=?l;
    ?return?rec
    }?
    </script>

    //获得控件的绝对位置(2)

    oRect?=?obj.getBoundingClientRect();
    oRect.left
    oRect.

    //最小化,最大化,关闭

    <object?id=min?classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">?
    <param?name="Command"?value="Minimize"></object>?
    <object?id=max?classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">?
    <param?name="Command"?value="Maximize"></object>?
    <OBJECT?id=close?classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11">?
    <PARAM?NAME="Command"?value="Close"></OBJECT>?
    <input?type=button?value=最小化?onclick=min.Click()>?
    <input?type=button?value=最大化?onclick=max.Click()>?
    <input?type=button?value=关闭?onclick=close.Click()>?

    ?

    ?

    ?

    //光标停在文字最后

    ?

    <script?language="javascript">
    function?cc()
    {
    ?var?e?=?event.srcElement;
    ?var?r?=e.createTextRange();
    ?r.moveStart('character',e.value.length);
    ?r.collapse(true);
    ?r.select();
    }
    </script>
    <input?type=text?name=text1?value="123"?onfocus="cc()">

    //页面进入和退出的特效

    进入页面<meta?http-equiv="Page-Enter"?content="revealTrans(duration=x,?transition=y)">
    推出页面<meta?http-equiv="Page-Exit"?content="revealTrans(duration=x,?transition=y)">?
    这个是页面被载入和调出时的一些特效。duration表示特效的持续时间,以秒为单位。transition表示使
    用哪种特效,取值为1-23:
      0?矩形缩小?
      1?矩形扩大?
      2?圆形缩小
      3?圆形扩大?
      4?下到上刷新?
      5?上到下刷新
      6?左到右刷新?
      7?右到左刷新?
      8?竖百叶窗
      9?横百叶窗?
      10?错位横百叶窗?
      11?错位竖百叶窗
      12?点扩散?
      13?左右到中间刷新?
      14?中间到左右刷新
      15?中间到上下
      16?上下到中间?
      17?右下到左上
      18?右上到左下?
      19?左上到右下?
      20?左下到右上
      21?横条?
      22?竖条?
      23?

    //网页是否被检索

    <meta?name="ROBOTS"?content="属性值">
      其中属性值有以下一些:
      属性值为"all":?文件将被检索,且页上链接可被查询;
      属性值为"none":?文件不被检索,而且不查询页上的链接;
      属性值为"index":?文件将被检索;
      属性值为"follow":?查询页上的链接;
      属性值为"noindex":?文件不检索,但可被查询链接;
      属性值为"nofollow":?

    ?


    //打印分页

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

    ?


    //设置打印

    <object?id="factory"?style="display:none"?viewastext
    ??classid="clsid:1663ed61-23eb-11d2-b92f-008048fdd814"
    ??codebase="http://www.meadroid.com/scriptx/ScriptX.cab#Version=5,60,0,360"
    ></object>
    <input?type=button?value=页面设置?onclick="factory.printing.PageSetup()">
    <input?type=button?value=打印预览?onclick="factory.printing.Preview()">
    ?
    <script?language=javascript>
    function?window.onload()
    {
    ???//?--?advanced?features
    ???factory.printing.SetMarginMeasure(2)?//?measure?margins?in?inches
    ???factory.printing.SetPageRange(false,?1,?3)?//?need?pages?from?1?to?3
    ???factory.printing.printer?=?"HP?DeskJet?870C"
    ???factory.printing.copies?=?2
    ???factory.printing.collate?=?true
    ???factory.printing.paperSize?=?"A4"
    ???factory.printing.paperSource?=?"Manual?feed"
    ???//?--?basic?features
    ???factory.printing.header?=?"居左显示&b居中显示&b居右显示页码,第&p页/共&P页"
    ???factory.printing.footer?=?"(自定义页脚)"
    ???factory.printing.portrait?=?false
    ???factory.printing.leftMargin?=?0.75
    ???factory.printing.topMargin?=?1.5
    ???factory.printing.rightMargin?=?0.75
    ???factory.printing.bottomMargin?=?1.5
    }
    function?Print(frame)?{
    ??factory.printing.Print(true,?frame)?//?print?with?prompt
    }
    </script>
    <input?type=button?value="打印本页"?onclick="factory.printing.Print(false)">
    <input?type=button?value="页面设置"?onclick="factory.printing.PageSetup()">
    <input?type=button?value="打印预览"?onclick="factory.printing.Preview()"><br>
    <a?href="http://www.meadroid.com/scriptx/docs/printdoc.htm?static"??target=_blank>具体使用手册,更多信息,点这里</a>
    ?

    //自带的打印预览

    WebBrowser.ExecWB(1,1)?打开?
    Web.ExecWB(2,1)?关闭现在所有的IE窗口,并打开一个新窗口?
    Web.ExecWB(4,1)?保存网页?
    Web.ExecWB(6,1)?打印?
    Web.ExecWB(7,1)?打印预览?
    Web.ExecWB(8,1)?打印页面设置?
    Web.ExecWB(10,1)?查看页面属性?
    Web.ExecWB(15,1)?好像是撤销,有待确认?
    Web.ExecWB(17,1)?全选?
    Web.ExecWB(22,1)?刷新?
    Web.ExecWB(45,1)?关闭窗体无提示?
    <style?media=print>?
    .Noprint{display:none;}<!--用本样式在打印时隐藏非打印项目-->?
    .PageNext{page-break-after:?always;}<!--控制分页-->?
    </style>?
    <object??id="WebBrowser"??width=0??height=0??classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2">????
    </object>????
    ?
    <center?class="Noprint"?>
    <input?type=button?value=打印?onclick=document.all.WebBrowser.ExecWB(6,1)>?
    <input?type=button?value=直接打印?onclick=document.all.WebBrowser.ExecWB(6,6)>?
    <input?type=button?value=页面设置?onclick=document.all.WebBrowser.ExecWB(8,1)>?
    </p>?
    <p>?<input?type=button?value=打印预览?onclick=document.all.WebBrowser.ExecWB(7,1)>?
    </center>

    //去掉打印时的页眉页脚

    <script??language="JavaScript">??
    var?HKEY_Root,HKEY_Path,HKEY_Key;
    HKEY_Root="HKEY_CURRENT_USER";
    HKEY_Path="\\Software\\Microsoft\\Internet?Explorer\\PageSetup\\";
    //设置网页打印的页眉页脚为空
    function?PageSetup_Null()
    {
    ?try
    ?{
    ?????????var?Wsh=new?ActiveXObject("WScript.Shell");
    ??HKEY_Key="header";
    ??Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"");
    ??HKEY_Key="footer";
    ??Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"");
    ?}
    ?catch(e){}
    }
    //设置网页打印的页眉页脚为默认值
    function??PageSetup_Default()
    {??
    ?try
    ?{
    ??var?Wsh=new?ActiveXObject("WScript.Shell");
    ??HKEY_Key="header";
    ??Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"&w&b页码,&p/&P");
    ??HKEY_Key="footer";
    ??Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"&u&b&d");
    ?}
    ?catch(e){}
    }
    </script>
    <input?type="button"?value="清空页码"?onclick=PageSetup_Null()>
    <input?type="button"?value="恢复页码"?onclick=PageSetup_Default()>

    //浏览器验证

    function?checkBrowser()
    {?
    ???this.ver=navigator.appVersion?
    ???this.dom=document.getElementById?1:0?
    ???this.ie6=(this.ver.indexOf("MSIE?6")>-1?&&?this.dom)?1:0;?
    ???this.ie5=(this.ver.indexOf("MSIE?5")>-1?&&?this.dom)?1:0;?
    ???this.ie4=(document.all?&&?!this.dom)?1:0;?
    ???this.ns5=(this.dom?&&?parseInt(this.ver)?>=?5)??1:0;?
    ???this.ns4=(document.layers?&&?!this.dom)?1:0;?
    ???this.mac=(this.ver.indexOf('Mac')?>?-1)??1:0;?
    ???this.ope=(navigator.userAgent.indexOf('Opera')>-1);?
    ???this.ie=(this.ie6?||?this.ie5?||?this.ie4)?
    ???this.ns=(this.ns4?||?this.ns5)?
    ???this.bw=(this.ie6?||?this.ie5?||?this.ie4?||?this.ns5?||?this.ns4?||?this.mac?||?this.ope)?
    ???this.nbw=(!this.bw)?
    ???return?this;
    }

    //计算内容宽和高

    <SCRIPT??language="javascript">??
    function??test(obj)??
    {??
    ???????var??range??=??obj.createTextRange();??
    ???????alert("内容区宽度:??"??+??range.boundingWidth????
    ?????????????????????????????????????????????????+??"px\r\n内容区高度:??"??+??range.boundingHeight??+??"px");??
    ?????????????
    }??
    </SCRIPT>??
    <BODY>??
    <Textarea?id="txt"?height="150">sdf</textarea><INPUT??type="button"??value="计算内容宽度"??onClick="test(txt)">??
    </BODY>

    //无模式的提示框

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

    ?

    ?

    ?

    ?

    //屏蔽按键

    ?

    <html>
    <head>
    ??<meta?http-equiv="Content-Type"?content="text/html;?charset=gb2312">
    ??<noscript><meta?http-equiv="refresh"?content="0;url=about:noscript"></noscript>
    ??<title>屏蔽鼠标右键、Ctrl+N、Shift+F10、Alt+F4、F11、F5刷新、退格键</title>
    </head>
    <body>
    <script?language="Javascript"><!--
    ??//屏蔽鼠标右键、Ctrl+N、Shift+F10、F11、F5刷新、退格键
    ??//Author:?meizz(梅花雨)?2002-6-18
    function?document.oncontextmenu(){event.returnValue=false;}//屏蔽鼠标右键
    function?window.onhelp(){return?false}?//屏蔽F1帮助
    function?document.onkeydown()
    {
    ??if?((window.event.altKey)&&
    ??????((window.event.keyCode==37)||???//屏蔽?Alt+?方向键?←
    ???????(window.event.keyCode==39)))???//屏蔽?Alt+?方向键?→
    ??{
    ?????alert("不准你使用ALT+方向键前进或后退网页!");
    ?????event.returnValue=false;
    ??}
    ?????/*?注:这还不是真正地屏蔽?Alt+?方向键,
    ?????因为?Alt+?方向键弹出警告框时,按住?Alt?键不放,
    ?????用鼠标点掉警告框,这种屏蔽方法就失效了。以后若
    ?????有哪位高手有真正屏蔽?Alt?键的方法,请告知。*/

    ??if?((event.keyCode==8)??||?????????????????//屏蔽退格删除键
    ??????(event.keyCode==116)||?????????????????//屏蔽?F5?刷新键
    ??????(event.ctrlKey?&&?event.keyCode==82)){?//Ctrl?+?R
    ?????event.keyCode=0;
    ?????event.returnValue=false;
    ?????}
    ??if?(event.keyCode==122){event.keyCode=0;event.returnValue=false;}??//屏蔽F11
    ??if?(event.ctrlKey?&&?event.keyCode==78)?event.returnValue=false;???//屏蔽?Ctrl+n
    ??if?(event.shiftKey?&&?event.keyCode==121)event.returnValue=false;??//屏蔽?shift+F10
    ??if?(window.event.srcElement.tagName?==?"A"?&&?window.event.shiftKey)?
    ??????window.event.returnValue?=?false;?????????????//屏蔽?shift?加鼠标左键新开一网页
    ??if?((window.event.altKey)&&(window.event.keyCode==115))?????????????//屏蔽Alt+F4
    ??{
    ??????window.showModelessDialog("about:blank","","dialogWidth:1px;dialogheight:1px");
    ??????return?false;
    ??}
    }
    </script>
    屏蔽鼠标右键、Ctrl+N、Shift+F10、Alt+F4、F11、F5刷新、退格键
    </body>
    </html>

    //屏蔽打印
    <style>
    @media print{
    * {display:none}
    }
    </style>

    //移动的图层,拖动

    1.<span?style='position:absolute;width:200;height:200;background:red'?onmousedown=MouseDown(this)?onmousemove=MouseMove()?onmouseup=MouseUp()>meizz</span>
    <script?language=javascript>
    var?Obj;
    function?MouseDown(obj)
    {
    ??Obj=obj;
    ??Obj.setCapture();
    ??Obj.l=event.x-Obj.style.pixelLeft;
    ??Obj.t=event.y-Obj.style.pixelTop;
    }
    function?MouseMove()
    {
    ??if(Obj!=null)
    ??{
    ????Obj.style.left?=?event.x-Obj.l;
    ????Obj.style.top?=?event.y-Obj.t;
    ??}
    }
    function?MouseUp()
    {
    ??if(Obj!=null)
    ??{
    ????Obj.releaseCapture();
    ????Obj=null;
    ??}
    }
    </script>
    2.
    <div?id="myDiv"?src="logo.gif"?ondrag="doDrag();"?onmouseover="this.style.cursor='hand'"?style="position:absolute;left=100;top=100;"?onmousedown="doMouseDown();">
    <a?href="#"?onclick="return?false"><h1>wlecome</h1></a>
    </div>
    <script?language="JavaScript"?type="text/javascript">
    var?orgMouseX;
    var?orgMouseY;
    var?orgObjX;
    var?orgObjY;
    function?doDrag()
    {
    var?myObject=document.all.myDiv;

    var?x=event.clientX;
    var?y=event.clientY;
    myObject.style.left=x-(orgMouseX-orgObjX);
    myObject.style.top=y-(orgMouseY-orgObjY);
    ?
    }
    function?doMouseDown()
    {
    orgMouseX=event.clientX;
    orgMouseY=event.clientY;
    orgObjX=parseInt(document.all.myDiv.style.left);
    orgObjY=parseInt(document.all.myDiv.style.top);
    }

    </script>
    ?

    //文档状态改变

    <iframe?src="a.html"?id="f"?name="f"?scrolling="no"?frameborder=0?marginwidth=0?marginheight=0></iframe>
    <script>
    var?doc=window.frames["f"].document;
    function?s(){
    ?if?(doc.readyState=="complete"){
    ??document.all.f.style.height=doc.body.scrollHeight
    ??document.all.f.style.width=doc.body.scrollWidth
    ?}
    }
    doc.onreadystatechange=s
    </script>

    //刷新后不变的文本框

    <HTML>
    <HEAD>
    <META?NAME="save"?CONTENT="history">
    <STYLE>
    ???.sHistory?{behavior:url(#default#savehistory);}
    </STYLE>
    </HEAD>
    <BODY>
    <INPUT?class=sHistory?type=text?id=oPersistInput>
    </BODY>
    </HTML>

    ?

    //访问剪贴板

    (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="width:100px;height:21px;font-size:10pt;"><span?style="width:18px;border:0px?solid?red;"><select?name="r00"?style="margin-left:-100px;width:118px;?background-color:#FFEEEE;"?onChange="document.all.re_name.value=this.value;">
    ????????????????<option?value="1">11111111<option>
    ????????????????<option?value="2">222222</option>
    ????????????????<option?value="3">333333</option>
    ??????????????</select>
    ??????????????</span>

    ?

    ?

    ?

    //设置光标位置

    function?getCaret(textbox)
    {
    ?var?control?=?document.activeElement;
    ?textbox.focus();
    ?var?rang?=?document.selection.createRange();
    ??rang.setEndPoint("StartToStart",textbox.createTextRange())
    ?control.focus();
    ?return?rang.text.length;
    }
    function?setCaret(textbox,pos)
    {
    ?try
    ?{
    ??var?r?=textbox.createTextRange();
    ???r.moveStart('character',pos);
    ???r.collapse(true);
    ???r.select();
    ?}
    ?catch(e)
    ?{}
    }
    function?selectLength(textbox,start,len)
    {
    ?try
    ?{
    ??var?r?=textbox.createTextRange();
    ?
    ??r.moveEnd('character',len-(textbox.value.length-start));
    ??r.moveStart('character',start);
    ??
    ??r.select();
    ?}
    ?catch(e)
    ?{//alert(e.description)}
    }
    function?insertAtCaret(textbox,text)
    {
    ?textbox.focus();
    ?document.selection.createRange().text?=?text;
    }


    //页内查找

    function?findInPage(str)
    {
    ?var?txt,?i,?found,n?=?0;
    ?if?(str?==?"")
    ?{
    ??return?false;
    ?}
    ?txt?=?document.body.createTextRange();
    ?for?(i?=?0;?i?<=?n?&&?(found?=?txt.findText(str))?!=?false;?i++)
    ?{
    ??txt.moveStart("character",?1);
    ??txt.moveEnd("textedit");
    ?}
    ?if?(found)
    ?{
    ??txt.moveStart("character",?-1);
    ??txt.findText(str);
    ??txt.select();
    ??txt.scrollIntoView();
    ??n++;??
    ?}
    ?else
    ?{
    ??if?(n?>?0)
    ??{
    ???n?=?0;
    ???findInPage(str);
    ??}
    ??else
    ??{
    ???alert(str?+?"...????????????您要找的文字不存在。\n?\n请试着输入页面中的关键字再次查找!");
    ??}
    ?}
    ?return?false;
    }

    //书

    http://www.itpub.net/attachment.php?s=&postid=1894598
    http://www.wrclub.net/down/listdown.aspx?id=1341

    //操作EXECL

    <script?language="javascript">
    function?jStartExcel()?{
    ?var?xls?=?new?ActiveXObject?(?"Excel.Application"?);
    ?xls.visible?=?true;
    ?var?newBook?=?xls.Workbooks.Add;
    ?newBook.Worksheets.Add;
    ?newBook.Worksheets(1).Activate;
    ?xls.ActiveWorkBook.ActiveSheet.PageSetup.Orientation?=?2;
    ?xls.ActiveWorkBook.ActiveSheet.PageSetup.PaperSize?=?5;
    ?newBook.Worksheets(1).Columns("A").columnwidth=50;
    ?newBook.Worksheets(1).Columns("A").WrapText?=?true;
    ?newBook.Worksheets(1).Columns("B").columnwidth=50;
    ?newBook.Worksheets(1).Columns("B").WrapText?=?true;
    ?newBook.Worksheets(1).Range("A1:B1000").NumberFormat?=?"0";
    ?newBook.Worksheets(1).Range("A1:B1000").HorizontalAlignment?=?-4131;
    ?newBook.Worksheets(1).Cells(1,1).Interior.ColorIndex="15";
    ?newBook.Worksheets(1).Cells(1,1).value="First?Column,?First?Cell";
    ?newBook.Worksheets(1).Cells(2,1).value="First?Column,?Second?Cell";
    ?newBook.Worksheets(1).Cells(1,2).value="Second?Column,?First?Cell";
    ?newBook.Worksheets(1).Cells(2,2).value="Second?Column,?Second?C
  相关解决方案