常用js(二)
//瀏覽器版本檢測
//獲取瀏覽器的名字Netscape或者Microsoft Internet Explorer
var browserName=navigator.appName;
//獲取瀏覽器的版本信息
var browserVersion=parseInt(navigator.appVersion);
var browser;
if(browserName=="Netscape"&&browserVersion==5){
browser="nn6"; //netspace6
}
else if(browserName="Netscape"&&browserVersion==4){
browser="nn4"; //netspace4
}
else if(browserName="Microsoft Internet Explorer"&&
browserVersion==4&&navigator.appVersion.indexOf("MSIE 6.0")!=-1){
browser="ie6"; //IE 6.0
}
else if(browserName="Microsoft Internet Explorer"&&
browserVersion==4&&
navigator.appVersion.indexOf("MSIE 5.5")!=-1){
browser="ie55"; //IE5.5
}
else if(browserName="Microsoft Internet Explorer"&&
browserVersion==4&&
navigator.appVersion.indexOf("MSIE 5.0")!=-1){
browser="ie5"; //IE5.0
}
else if(browserName="Microsoft Internet Explorer"&&
browserVersion==4){
browser="ie4"; //IE4
}
if(browser=="nn6"||browser=="ie6"||browser=="ie55"||browser="ie5"){
//不與高版本要求的代碼
}else if(browser=="ie4"){
//不兼容nn4的代碼
}else if(browser=="nn4"){
//不兼容ie4的代碼
}
*/
function isWin98(){
if(navigator.appVersion.indexOf("98")!=-1){
return true;
}else{
//alert("你使用不是windows98操作系統");
return false;
}
}
function redirectPage(){
//分辨率初始化
var size;
if(screen.width==640&&screen.height==480)
return size="640 x 480";
if(screen.width==800&&screen.height==600)
return size="800 x 600";
if(screen.width==1024&&screen.height==768)
return size="1024 x 768";
else
return size="640 x 480";
}
function Chinese(num) //將阿拉伯數字翻譯成中文的大寫數字
{
if(!/^/d*(/./d*)?$/.test(num)){alert("Number is wrong!"); return "Number is wrong!";}
var BB = new Array("","拾","佰","仟","萬","億","點","");
var a = (""+ num).replace(/(^0*)/g, "").split("."), k = 0, re = "";
{
switch(k)
{
case 0 : re = BB[7] + re; break;
case 4 : if(!new RegExp("0{4}//d{"+ (a[0].length-i-1) +"}$").test(a[0]))
re = BB[4] + re; break;
case 8 : re = BB[5] + re; BB[7] = BB[5]; k = 0; break;
}
if(k%4 == 2 && a[0].charAt(i+2) != 0 && a[0].charAt(i+1) == 0) re = AA[0] + re;
if(a[0].charAt(i) != 0) re = AA[a[0].charAt(i)] + BB[k%4] + re; k++;
}
{
re += BB[6];
for(var i=0; i<a[1].length; i++) re += AA[a[1].charAt(i)];
}
return re;
}
//=================================字符串類===============================
//禁止全角
function isQj(elem){
//[/u4E00-/u9FA5]漢字﹐[/uFE30-/uFFA0]全角字符
var pattern=/[/uFE30-/uFFA0]/gi;
if(pattern.test(elem)){
//不爲漢字
//alert("不能用全角");
//elem="";
return false;
}else{
//輸入正常
return true;
}
}
//含有非法字符~!@%^&*();'/"?><[]{}//|,:/=+—“”‘
function havegg(elem){
var str = "~!@%^&*();'/"?><[]{}//|,:/=+—“”‘";
for(i=0;i<elem.length;i++)
if (str.indexOf(elem.charAt(i)) !=-1){
return false;
}
return true;
}
//由a-z和A-Z組成的字符串
function isStr(elem){
var pattern=/^[a-zA-Z]+$/;
if(pattern.test(elem)){
return true;
}else{
return false;
}
}
//由字符串和數字字符串組成
function isStrAndInt(elem){
var patten=/^[a-zA-Z0-9]+$/;
if(pattern.test(elem)){
return true;
}else{
return false;
}
}
//判斷字符由字母和數字,下劃線,點號組成.且開頭的只能是下劃線和字母
function isStrin(elem){
var pattern=/^(/b[a-zA-Z]|/b_)([a-zA-Z0-9]+(_|/.)?[a-zA-Z0-9]*)+$/;
if(pattern.test(elem)){
return true;
}else{
return false;
}
}
// ////////////////////////字符串完畢/////////////////////////////////////////
//郵政編碼
//要求:無地區規律,但都是6位數字,最大值爲(西藏拉薩850000),最小值爲(呼和浩特010000)
function isPost(elem){
var pattern=/^[0-9]{6}$/;
if(!pattern.test(elem)){
return false;
}else{
if(parseInt(elem)<10000||parseInt(elem)>850000){
return false;
}
return true;
}
}
//整數(可以帶正負符號或者不帶符號表正數)
function isInt(elem){
var pattern=/^(/-|+)?/d+$/;
if(!pattern.test(elem)){
return false;
}else{
return true;
}
}
//負數
function isNegative(elem){
var pattern=/^/b/-d+$/;
if(!pattern.test(elem)){
return false;
}else{
return true;
}
}
//數字字符
function isFigStr(elem){
var pattern=/^/d+$/;
if(!pattern.test(elem)){
return false;
}else{
return true;
}
}
//不大於imax,不小於imix的整數
function isScopeInt(elem){
var imax=80000;
var imix=100;
//判斷elem是否爲整數,向上參考
if(isInt(elem)==false){
//alert("elem不是整數");
return false;
}
if(parseInt(elem)>imax){
return false;
}
if(parseInt(elem)<imix){
return false;
}
return true;
}
// //////////////////////////////////數據類結束////////////////////////////////
function isIP3(elem){
var pattern=/(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])/.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)/.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)/.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])/;
if(pattern.test(elem)){
return true;
}else{
//alert("ip格式不正確");
return false;
}
}
//移動電話(手機)
//樣式:13531214732或013531214732
function isMoveTel(elem){
var pattern=/^0{0,1}13[0-9]{9}$/;
if(pattern.test(elem)){
return true;
}else{
//elert("電話號碼不正確");
return false;
}
}
function isFixTel(elem){
var pattern=/(^[0-9]{3,4}/-[0-9]{3,8}$)|(^[0-9]{3,8}$)|(^/([0-9]{3,4}/)[0-9]{3,8}$)/;
if(pattern.test(elem)){
return true;
}else{
//alert("電話號碼格式不正確");
return false;
}
}
function isTel(elem){
var pattern=/(^[0-9]{3,4}/-[0-9]{3,8}$)|(^[0-9]{3,8}$)|(^/([0-9]{3,4}/)[0-9]{3,8}$)|(^0{0,1}13[0-9]{9}$)/;
if(pattern.test(elem)){
return true;
}else{
//elert("電話號碼格式不正確");
return false;
}
}
自定以右鍵菜單。
<HTML><HEAD><TITLE>右鍵菜單的淡入淡出效果</TITLE>
<META content="text/html; charset=gb2312" http-equiv=Content-Type>
<SCRIPT language=JavaScript>
<!-- // RightClickMenu
var intDelay=10; //設置菜單顯示速度,越大越慢
var intInterval=5; //每次更改的透明度
function showmenuie5(){
var rightedge=document.body.clientWidth-event.clientX
var bottomedge=document.body.clientHeight-event.clientY
if (rightedge<ie5menu.offsetWidth)
ie5menu.style.left=document.body.scrollLeft+event.clientX-ie5menu.offsetWidth
else
ie5menu.style.left=document.body.scrollLeft+event.clientX
if (bottomedge<ie5menu.offsetHeight)
ie5menu.style.top=document.body.scrollTop+event.clientY-ie5menu.offsetHeight
else
ie5menu.style.top=document.body.scrollTop+event.clientY
ie5menu.style.visibility="visible"
//ie5menu.style.visibility=""
ie5menu.filters.alpha.opacity=0
GradientShow()
return false
}
function hidemenuie5(){
//ie5menu.style.visibility="hidden"
GradientClose()
}
function highlightie5(){
if (event.srcElement.className=="menuitems"){
event.srcElement.style.backgroundColor="highlight"
event.srcElement.style.color="white"
}
}
function lowlightie5(){
if (event.srcElement.className=="menuitems"){
event.srcElement.style.backgroundColor=""
event.srcElement.style.color="#000000"
}
}
function jumptoie5(){
if (event.srcElement.className=="menuitems"){
if (event.srcElement.url != ''){
if (event.srcElement.getAttribute("target")!=null)
window.open(event.srcElement.url,event.srcElement.getAttribute("target"))
else
window.location=event.srcElement.url
}
}
}
{
ie5menu.filters.alpha.opacity+=intInterval
if (ie5menu.filters.alpha.opacity<100) setTimeout("GradientShow()",intDelay)
}
function GradientClose() //實現淡出的函數
{
ie5menu.filters.alpha.opacity-=intInterval
if (ie5menu.filters.alpha.opacity>0) {
setTimeout("GradientClose()",intDelay)
}
else {
ie5menu.style.visibility="hidden"
}
}
{
oEl=event.srcElement
if (oEl.style.background!="navy") {
oEl.style.background="navy"
}
else {
oEl.style.background="#cccccc"
}
}
// -->
</SCRIPT>
.cMenu {
FILTER: alpha(opacity=0);BACKGROUND-COLOR: #D6D3CE;BORDER-BOTTOM: #666666 2px solid; BORDER-LEFT: #E4E4E4 2px solid; BORDER-RIGHT: #666666 2px solid; BORDER-TOP: #E4E4E4 2px solid; COLOR: #000000; CURSOR: default; FONT-SIZE: 9pt; color:#000000;FONT-WEIGHT: normal; LINE-HEIGHT: 20px; POSITION: absolute; VISIBILITY: hidden; WIDTH: 110px
}
.menuitems {
font-size:9pt;
MARGIN: 2px;
PADDING-BOTTOM: 0px;
PADDING-LEFT: 15px;
PADDING-RIGHT: 3px;
PADDING-TOP: 0px;
}
</STYLE>
</HEAD>
<BODY>
<OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WebBrowser width=0>
</OBJECT>
<RIGHTCLICK><!--[if IE]>
<DIV class=cMenu id=ie5menu οnclick=jumptoie5() οnmοuseοut=lowlightie5()
οnmοuseοver=highlightie5()>
<DIV class=menuitems url="javascript:click_obj(1)">前進</DIV>
<DIV class=menuhr><hr style="width:100%"></DIV>
<DIV class=menuitems url="javascript:click_obj(2)">刷新</DIV>
<DIV class=menuitems url="javascript:click_obj(3)">加入收藏夾</DIV>
<DIV class=menuitems url="javascript:click_obj(4)">查看源文件</DIV>
<DIV class=menuhr><hr style="width:100%"></DIV>
<DIV class=menuitems url="javascript:click_obj(5)">屬性</DIV>
<![endif]-->
<!--
function click_obj(id){
switch(id){
case 0:
history.back()
break
case 1:
history.forward()
break
case 2:
window.location.reload()
break
case 3:
window.external.AddFavorite(location.href, document.title)
break
case 4:
window.location = "view-source:" + window.location.href
break
case 5:
document.all.WebBrowser.ExecWB(10,1)
break
}
}
ie5menu.className="cMenu"
document.οncοntextmenu=showmenuie5
document.body.οnclick=hidemenuie5
}
//-->
</SCRIPT>
</RIGHTCLICK>
</BODY></HTML>
KeyCode常數用法
--------------------------------------------------------------------------------
常數 值 描述
vbKeyLButton 0x1 鼠標左鍵
vbKeyRButton 0x2 鼠標右鍵
vbKeyCancel 0x3 CANCEL 鍵
vbKeyMButton 0x4 鼠標中鍵
vbKeyBack 0x8 BACKSPACE 鍵
vbKeyTab 0x9 TAB 鍵
vbKeyClear 0xC CLEAR 鍵
vbKeyReturn 0xD ENTER 鍵
vbKeyShift 0x10 SHIFT 鍵
vbKeyControl 0x11 CTRL 鍵
vbKeyMenu 0x12 MENU 鍵
vbKeyPause 0x13 PAUSE 鍵
vbKeyCapital 0x14 CAPS LOCK 鍵
vbKeyEscape 0x1B ESC 鍵
vbKeySpace 0x20 SPACEBAR 鍵
vbKeyPageUp 0x21 PAGE UP 鍵
vbKeyPageDown 0x22 PAGE DOWN 鍵
vbKeyEnd 0x23 END 鍵
vbKeyHome 0x24 HOME 鍵
vbKeyLeft 0x25 LEFT ARROW 鍵
vbKeyUp 0x26 UP ARROW 鍵
vbKeyRight 0x27 RIGHT ARROW 鍵
vbKeyDown 0x28 DOWN ARROW 鍵
vbKeySelect 0x29 SELECT 鍵
vbKeyPrint 0x2A PRINT SCREEN 鍵
vbKeyExecute 0x2B EXECUTE 鍵
vbKeySnapshot 0x2C SNAPSHOT 鍵
vbKeyInsert 0x2D INSERT 鍵
vbKeyDelete 0x2E DELETE 鍵
vbKeyHelp 0x2F HELP 鍵
vbKeyNumlock 0x90 NUM LOCK 鍵
A 至 Z 鍵與 A 杴 Z 字母的 ASCII 碼相同:
常數 值 描述
vbKeyA 65 A 鍵
vbKeyB 66 B 鍵
vbKeyC 67 C 鍵
vbKeyD 68 D 鍵
vbKeyE 69 E 鍵
vbKeyF 70 F 鍵
vbKeyG 71 G 鍵
vbKeyH 72 H 鍵
vbKeyI 73 I 鍵
vbKeyJ 74 J 鍵
vbKeyK 75 K 鍵
vbKeyL 76 L 鍵
vbKeyM 77 M 鍵
vbKeyN 78 N 鍵
vbKeyO 79 O 鍵
vbKeyP 80 P 鍵
vbKeyQ 81 Q 鍵
vbKeyR 82 R 鍵
vbKeyS 83 S 鍵
vbKeyT 84 T 鍵
vbKeyU 85 U 鍵
vbKeyV 86 V 鍵
vbKeyW 87 W 鍵
vbKeyX 88 X 鍵
vbKeyY 89 Y 鍵
vbKeyZ 90 Z 鍵
0 至 9 鍵與數字 0 杴 9 的 ASCII 碼相同:
常數 值 描述
vbKey0 48 0 鍵
vbKey1 49 1 鍵
vbKey2 50 2 鍵
vbKey3 51 3 鍵
vbKey4 52 4 鍵
vbKey5 53 5 鍵
vbKey6 54 6 鍵
vbKey7 55 7 鍵
vbKey8 56 8 鍵
vbKey9 57 9 鍵
下列常數代表數字鍵盤上的鍵:
常數 值 描述
vbKeyNumpad0 0x60 0 鍵
vbKeyNumpad1 0x61 1 鍵
vbKeyNumpad2 0x62 2 鍵
vbKeyNumpad3 0x63 3 鍵
vbKeyNumpad4 0x64 4 鍵
vbKeyNumpad5 0x65 5 鍵
vbKeyNumpad6 0x66 6 鍵
vbKeyNumpad7 0x67 7 鍵
vbKeyNumpad8 0x68 8 鍵
vbKeyNumpad9 0x69 9 鍵
vbKeyMultiply 0x6A MULTIPLICATION SIGN (*) 鍵
vbKeyAdd 0x6B PLUS SIGN (+) 鍵
vbKeySeparator 0x6C ENTER 鍵
vbKeySubtract 0x6D MINUS SIGN (杴) 鍵
vbKeyDecimal 0x6E DECIMAL POINT (.) 鍵
vbKeyDivide 0x6F DIVISION SIGN (/) 鍵
下列常數代表功能鍵:
常數 值 描述
vbKeyF1 0x70 F1 鍵
vbKeyF2 0x71 F2 鍵
vbKeyF3 0x72 F3 鍵
vbKeyF4 0x73 F4 鍵
vbKeyF5 0x74 F5 鍵
vbKeyF6 0x75 F6 鍵
vbKeyF7 0x76 F7 鍵
vbKeyF8 0x77 F8 鍵
vbKeyF9 0x78 F9 鍵
vbKeyF10 0x79 F10 鍵
vbKeyF11 0x7A F11 鍵
vbKeyF12 0x7B F12 鍵
vbKeyF13 0x7C F13 鍵
vbKeyF14 0x7D F14 鍵
vbKeyF15 0x7E F15 鍵
vbKeyF16 0x7F F16 鍵