正文

javascript小技巧二2007-08-20 12:49:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/tiay/28674.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 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 {  background-color: #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="width: 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()" >  

阅读(2799) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册