javascript 小技巧(2)
//连接数据库
<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
//判断键值
//禁止FSO
1.注销组件
regsvr32?/u?scrrun.dll
2.修改PROGID?
HKEY_CLASSES_ROOT\Scripting.FileSystemObject
Scripting.FileSystemObject
3.对于使用object的用户,修改HKEY_CLASSES_ROOT\Scripting.
//省略号
//检测media play版本
//图象按比例
//细线SELECT
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()"
>
以上内容可以随意转载,转载后请注名来源和出处!
<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枚举
<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)"
>
?
<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>
?
<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>
doc?=?new
?ActiveXObject
("Msxml2.DOMDocument"
);
doc?=?new
?ActiveXObject
("Microsoft.XMLDOM"
)
->>
doc?=?(new
?DOMParser()).parseFromString(sXML,'text/xml')
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=完成
(1)拖拽访问
event.dataTransfer.setData("URL"
,?oImage.src);
sImageURL?=?event.dataTransfer.getData("URL"
)
(2)普通访问
window.clipboardData.setData("Text"
,oSource.innerText);
window.clipboardData.getData("Text"
);
<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>
<p??style="page-break-after:always"
>page1</p>??
<p??style="page-break-after:always"
>page2</p>??
<meta?name="ROBOTS"
?content="属性值"
>
其中属性值有以下一些:
属性值为"all"
:?文件将被检索,且页上链接可被查询;
属性值为"none"
:?文件不被检索,而且不查询页上的链接;
属性值为"index"
:?文件将被检索;
属性值为"follow"
:?查询页上的链接;
属性值为"noindex"
:?文件不检索,但可被查询链接;
属性值为"nofollow"
:?
<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()>?
<META?HTTP-EQUIV="pragma"
?CONTENT="no-cache"
>
<META?HTTP-EQUIV="Cache-Control"
?CONTENT="no-cache,?must-revalidate"
>
<META?HTTP-EQUIV="expires"
?CONTENT="0"
>
<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)"
>
<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"
>
< type="text/javascript">
< type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">