现在的位置: 首页 > 综合 > 正文

web开发常用js功能性小技巧

2013年03月04日 ⁄ 综合 ⁄ 共 7564字 ⁄ 字号 评论关闭

web开发常用js功能性小技巧

--------------------------------------------------------------------------------

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">;
<HTML>;
<HEAD>;
<TITLE>; New Document </TITLE>;

</HEAD>;

<BODY>;
<FORM METHOD=POST ACTION="">;
<input onpaste="return false;" type="text" name="textfield" style="width:400px;  ime-mode:disabled" value=" English only">; 
</FORM>;
</BODY>;
</HTML>;

-----------------------------------------------------------------------------
只能输入数字

<script LANGUAGE="javascript">;
<!--
function check()
{
if (document.form.tell.value==""){
 alert("請輸入電話號碼!");
 document.form.tell.focus();
 return false;
}
else{
 var Letters = "0123456789()+-";
 for (i=0; i< document.form.tell.value.length; i++){
    var CheckChar = document.form.tell.value.charAt(i);
    if (Letters.indexOf(CheckChar) == -1){
      alert("電話號碼格式不正確!");
      document.form.tell.focus();
      return false;
     }
   }
 }
}
//-->;
</script>; 

在<body>;...</body>;之间的表单.
<form method="POST" name=form action="" onSubmit="return check();">;
<p align="center">;
  请输入电话号码:<input type="text" name="tell" size="20">;
<input type="submit" value="提交" name="B1">;</p>;
</form>;
 
--------------------------------------------------------------------------------
e mail 合法性检查
function check()
{
if(document.register.email.value.length!=0)
 {
   if (document.register.email.value.charAt(0)=="." ||        
        document.register.email.value.charAt(0)=="@"||       
        document.register.email.value.indexOf('@', 0) == -1 || 
        document.register.email.value.indexOf('.', 0) == -1 || 
        document.register.email.value.lastIndexOf("@")                          
     ==document.register.email.value.length-1 || 
        document.register.email.value.lastIndexOf(".")
             ==document.register.email.value.length-1)
    {
     alert("Email的格式不正確!");
     document.register.email.focus();
     return false;
     }
  }
else
 {
  alert("Email的不能为空!");
  document.register.email.focus();
  return false;
  }
return false;

-----------------------------------------------------------
页面右键屏蔽
<body oncontextmenu="return false">;

----------------------------------------------------------------
自动清除输入框中的空格

再<head>;...</head>;间加入 
<SCRIPT LANGUAGE="JavaScript">;
<!--//
function ignoreSpaces(string) {
var temp = "";
string = '' + string;
splitstring = string.split(" "); //双引号之间是个空格;
for(i = 0; i < splitstring.length; i++)
temp += splitstring;
return temp;
}
//-->;
</script>; 

如下代码加入<body>;区

<form method="post" action="...">;
<input type=text size=25 onBlur="this.value=ignoreSpaces(this.value);" name="text">;
<input type=submit value="Ok" name="button">;
</form>;  
 
-----------------------------------------------------------------------
右键菜单的淡入淡出效果
<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
}
}

function GradientShow() //实现淡入的函数 

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

function ChangeBG() //改变菜单项的背景颜色,这里的两种颜色值可以改为你需要的 

oEl=event.srcElement 
if (oEl.style.background!="navy") { 
  oEl.style.background="navy" 
  } 
  else { 
  oEl.style.background="#cccccc" 
  } 

// -->;
</SCRIPT>; 

<style type=text/css>;
.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>; 

<META content="Microsoft FrontPage 4.0" name=GENERATOR>;
</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 onclick=jumptoie5() onmouseout=lowlightie5() 
onmouseover=highlightie5()>; 

<DIV class=menuitems url="javascript:click_obj(0)">;后退</DIV>;
<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>; 

</DIV>;
<![endif]-->; 

<SCRIPT language=JavaScript>;
<!--
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
}

if (document.all&&window.print){
ie5menu.className="cMenu"
document.oncontextmenu=showmenuie5
document.body.onclick=hidemenuie5
}
//-->;
</SCRIPT>;
</RIGHTCLICK>;
</BODY>;</HTML>;

 ----------------------------------------------------------------------------
ie用activex实现打印  我没有检测过版本,ie6下正常
<head>;...</head>;加入:
<SCRIPT LANGUAGE=javascript>;
<!--
function setPrint()
{
WB.ExecWB(8,1);
}
function previewPrint()
{
WB.ExecWB(7,1)
}
//-->;
</SCRIPT>;

在<body>;...</body>;加入:
<OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WB width=0>;
</OBJECT>;
<INPUT type="button" value="Set" id=button1 name=button1 onclick="setPrint();">;
<INPUT type="button" value="Preview" id=button2 name=button2 onclick="previewPrint();">; 

----------------------------------------------------------------
超链接提交表单 
<script LANGUAGE="JavaScript">;
function checkvalue()
{
 if(document.welcomeform.nickname.value=="")
 {
  alert("昵称不能为空!");
  return(false);
  }
 if(document.welcomeform.password.value=="")
 {
  alert("密码不能为空!");
  return(false);    
  }
 document.welcomeform.submit(); 
 return(true);   
}
</script>;

在<body>;...</body>;之间加入如下代码:
<form name="welcomeform" method="post" action="welcome.asp">;
 <a href="#" onclick="javascript:checkvalue();return false:">;登录</a>;
</form>; 
----------------------------------------------------------
不允许缓存页面
使用java提供的方法,在jsp或者servlet中都可以
<% 
response.setHeader("Pragma","No-cache"); 
response.setHeader("Cache-Control","no-cache"); 
response.setDateHeader("Expires", 0); 
%>;  

----------------------------------------

抱歉!评论已关闭.