posts - 10,comments - 5,trackbacks - 0

          選擇自 lovinglgz 的 Blog 常用的一些javascript小技巧
          ?from:http://www.blueidea.com/bbs/NewsDetail.asp?lp=1&id=2201069
          ?
          //setTimeout增加參數
          ?
          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');
          ?

          ?[Ctrl+A 全部選擇 提示:你可先修改部分代碼,再按運行]
          //自定義的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>

          ?[Ctrl+A 全部選擇 提示:你可先修改部分代碼,再按運行]
          //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;


          ?[Ctrl+A 全部選擇 提示:你可先修改部分代碼,再按運行]
          //使用數據島

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


          ?[Ctrl+A 全部選擇 提示:你可先修改部分代碼,再按運行]
          //獲得參數
          ?
          <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]);
          ?}
          }
          //-->
          ?
          ?

          ?[Ctrl+A 全部選擇 提示:你可先修改部分代碼,再按運行]
          //可編輯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>


          ?[Ctrl+A 全部選擇 提示:你可先修改部分代碼,再按運行]

          //設置光標位置

          ?

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

          ?

          posted on 2006-05-12 18:50 Stellar.He 閱讀(79) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發(fā)表評論。


          網站導航:
           
          主站蜘蛛池模板: 祁连县| 庆城县| 清远市| 望城县| 新绛县| 肥西县| 股票| 玛纳斯县| 隆化县| 巩留县| 宜黄县| 澄城县| 云梦县| 河北区| 垫江县| 车致| 武宁县| 夹江县| 财经| 乌鲁木齐县| 松江区| 栾川县| 三门峡市| 马尔康县| 札达县| 洛扎县| 吐鲁番市| 克什克腾旗| 临泉县| 庐江县| 石柱| 乌什县| 黄大仙区| 独山县| 三门峡市| 密山市| 静宁县| 云南省| 双辽市| 德江县| 鄯善县|