超级实用且不花哨的js代码大全 (三) -----高级应用(二)

简介:
//组件是否安装 

isComponentInstalled("{6B053A4B-A7EC-4D3D-4567-B8FF8A1A5739}", "componentID")) 


www.jiedichina.com 南京捷帝科技

//检查网页是否存在 

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); 
  alert(s.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





//操作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') 



//禁止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> 



//判断键值 

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




//检测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
    } 
     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; 
  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()" 
分类: Javascript
本文转自快乐就好博客园博客,原文链接:http://www.cnblogs.com/happyday56/archive/2007/12/10/988994.html,如需转载请自行联系原作者


相关文章
|
23天前
|
前端开发 机器人 API
前端大模型入门(一):用 js+langchain 构建基于 LLM 的应用
本文介绍了大语言模型(LLM)的HTTP API流式调用机制及其在前端的实现方法。通过流式调用,服务器可以逐步发送生成的文本内容,前端则实时处理并展示这些数据块,从而提升用户体验和实时性。文章详细讲解了如何使用`fetch`发起流式请求、处理响应流数据、逐步更新界面、处理中断和错误,以及优化用户交互。流式调用特别适用于聊天机器人、搜索建议等应用场景,能够显著减少用户的等待时间,增强交互性。
171 2
|
9天前
|
数据可视化 JavaScript 前端开发
数据可视化进阶:D3.js在复杂数据可视化中的应用
【10月更文挑战第26天】数据可视化是将数据以图形、图表等形式呈现的过程,帮助我们理解数据和揭示趋势。D3.js(Data-Driven Documents)是一个基于JavaScript的库,使用HTML、SVG和CSS创建动态、交互式的数据可视化。它通过数据驱动文档的方式,将数据与DOM元素关联,提供高度的灵活性和定制性,适用于复杂数据的可视化任务。 示例代码展示了如何使用D3.js创建一个简单的柱状图,展示了其基本用法。D3.js的链式调用和回调函数机制使代码简洁易懂,支持复杂的布局和交互逻辑。
25 3
|
14天前
|
JavaScript 前端开发 开发者
探索JavaScript原型链:深入理解与实战应用
【10月更文挑战第21天】探索JavaScript原型链:深入理解与实战应用
25 1
|
26天前
|
JavaScript 前端开发 API
Vue.js:打造高效前端应用的最佳选择
【10月更文挑战第9天】Vue.js:打造高效前端应用的最佳选择
17 2
|
26天前
|
设计模式 JavaScript 前端开发
探索JavaScript中的闭包:从基础概念到实际应用
在本文中,我们将深入探讨JavaScript中的一个重要概念——闭包。闭包是一种强大的编程工具,它允许函数记住并访问其所在作用域的变量,即使该函数在其作用域之外被调用。通过详细解析闭包的定义、创建方法以及实际应用场景,本文旨在帮助读者不仅理解闭包的理论概念,还能在实际开发中灵活运用这一技巧。
|
6天前
|
前端开发 JavaScript
JavaScript新纪元:ES6+特性深度解析与实战应用
【10月更文挑战第29天】本文深入解析ES6+的核心特性,包括箭头函数、模板字符串、解构赋值、Promise、模块化和类等,结合实战应用,展示如何利用这些新特性编写更加高效和优雅的代码。
17 0
|
23天前
|
自然语言处理 JavaScript 前端开发
深入理解JavaScript中的闭包:原理、应用与代码演示
【10月更文挑战第12天】深入理解JavaScript中的闭包:原理、应用与代码演示
|
24天前
|
监控 JavaScript 前端开发
深入了解Vue.js:构建现代前端应用的利器
【10月更文挑战第11天】深入了解Vue.js:构建现代前端应用的利器
13 0
|
24天前
|
前端开发 JavaScript 开发者
深入了解Webpack:现代JavaScript应用的打包利器
【10月更文挑战第11天】 深入了解Webpack:现代JavaScript应用的打包利器
|
24天前
|
自然语言处理 JavaScript 前端开发
深入理解JavaScript闭包:原理与应用
【10月更文挑战第11天】深入理解JavaScript闭包:原理与应用
17 0