首页  :: 新随笔  :: 订阅 订阅  :: 管理

40种网站设计常用技巧~

Posted on 2007-10-27 10:10  礼拜一  阅读(421)  评论(1编辑  收藏  举报
  1.   oncontextmenu="window.event.returnValue=false"   将彻底屏蔽鼠标右键  
  <table   border   oncontextmenu=return(false)><td>no</table>   可用于Table  
   
  2.   <body   onselectstart="return   false">   取消选取、防止复制  
   
  3.   onpaste="return   false"   不准粘贴  
   
  4.   oncopy="return   false;"   oncut="return   false;"   防止复制  
   
  5.   <link   rel="Shortcut   Icon"   href="favicon.ico">   IE地址栏前换成自己的图标  
   
  6.   <link   rel="Bookmark"   href="favicon.ico">   可以在收藏夹中显示出你的图标  
   
  7.   <input   style="ime-mode:disabled">   关闭输入法  
   
  8.   永远都会带着框架  
  <script   language="JavaScript"><!--  
  if   (window   ==   top)top.location.href   =   "frames.htm";   //frames.htm为框架网页  
  //   --></script>  
   
  9.   防止被人frame  
  <SCRIPT   LANGUAGE=JAVASCRIPT><!--    
  if   (top.location   !=   self.location)top.location=self.location;  
  //   --></SCRIPT>  
   
  10.   网页将不能被另存为  
  <noscript><iframe   src="/blog/*.html>";</iframe></noscript>    
   
  11.   <input   type=button   value=查看网页源代码    
  onclick="window.location   =   "view-source:"+   "http://www.williamlong.info"">  
   
  12.删除时确认  
  <a   href="javascript:if(confirm("确实要删除吗?"))location="boos.asp?&areyou=删除&page=1"">删除</a>    
   
  13.   取得控件的绝对位置  
  //Javascript  
  <script   language="Javascript">  
  function   getIE(e){  
  var   t=e.offsetTop;  
  var   l=e.offsetLeft;  
  while(e=e.offsetParent)  
  alert("top="+t+"/nleft="+l);  
  }  
  </script>  
   
  //VBScript  
  <script   language="VBScript"><!--  
  function   getIE()  
  dim   t,l,a,b  
  set   a=document.all.img1  
  t=document.all.img1.offsetTop  
  l=document.all.img1.offsetLeft  
  while   a.tagName<>"BODY"  
  set   a   =   a.offsetParent  
  t=t+a.offsetTop  
  l=l+a.offsetLeft  
  wend  
  msgbox   "top="&t&chr(13)&"left="&l,64,"得到控件的位置"  
  end   function  
  --></script>  
   
  14.   光标是停在文本框文字的最后  
  <script   language="javascript">  
  function   cc()  
  {  
  var   e   =   event.srcElement;  
  var   r   =e.createTextRange();  
  r.moveStart("character",e.value.length);  
  r.collapse(true);  
  r.select();  
  }  
  </script>  
  <input   type=text   name=text1   value="123"   onfocus="cc()">  
   
  15.   判断上一页的来源  
  javascript:  
  document.referrer  

  16.   最小化、最大化、关闭窗口  
  <object   id=hh1   classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">    
  <param   name="Command"   value="Minimize"></object>  
  <object   id=hh2   classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">    
  <param   name="Command"   value="Maximize"></object>  
  <OBJECT   id=hh3   classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11">  
  <PARAM   NAME="Command"   VALUE="Close"></OBJECT>  
  <input   type=button   value=最小化   onclick=hh1.Click()>  
  <input   type=button   value=最大化   onclick=hh2.Click()>  
  <input   type=button   value=关闭   onclick=hh3.Click()>  
  本例适用于IE  
   
  17.屏蔽功能键Shift,Alt,Ctrl  
  <script>  
  function   look(){    
  if(event.shiftKey)    
  alert("禁止按Shift键!");   //可以换成ALT CTRL  
  }    
  document.onkeydown=look;    
  </script>  
   
  18.   网页不会被缓存  
  <META   HTTP-EQUIV="pragma"   CONTENT="no-cache">  
  <META   HTTP-EQUIV="Cache-Control"   CONTENT="no-cache,   must-revalidate">  
  <META   HTTP-EQUIV="expires"   CONTENT="Wed,   26   Feb   1997   08:21:57   GMT">  
  或者<META   HTTP-EQUIV="expires"   CONTENT="0">  
   
  19.怎样让表单没有凹凸感?  
  <input   type=text   style="border:1   solid   #000000">    
  或  
  <input   type=text   style="border-left:none;   border-right:none;   border-top:none;   border-bottom:    
   
  1   solid   #000000"></textarea>  
   
  20.<div><span>&<layer>的区别?    
  <div>(division)用来定义大段的页面元素,会产生转行    
  <span>用来定义同一行内的元素,跟<div>的唯一区别是不产生转行    
  <layer>是ns的标记,ie不支持,相当于<div>  
   
  21.让弹出窗口总是在最上面:  
  <body   onblur="this.focus();">  
   
  22.不要滚动条?    
  让竖条没有:    
  <body   style="overflow:scroll;overflow-y:hidden">    
  </body>    
  让横条没有:    
  <body   style="overflow:scroll;overflow-x:hidden">    
  </body>    
  两个都去掉?更简单了    
  <body   scroll="no">    
  </body>    
   
  23.怎样去掉图片链接点击后,图片周围的虚线?  
  <a   href="#"   onFocus="this.blur()"><img   src="/blog/logo.jpg"   border=0></a>  
   
  24.电子邮件处理提交表单  
  <form   name="form1"   method="post"   action="mailto:****@***.com"   enctype="text/plain">    
  <input   type=submit>  
  </form>  
   
  25.在打开的子窗口刷新父窗口的代码里如何写?  
  window.opener.location.reload()  
   
  26.如何设定打开页面的大小  
  <body   onload="top.resizeTo(300,200);">  
  打开页面的位置<body   onload="top.moveBy(300,200);">  
   
  27.在页面中如何加入不是满铺的背景图片,拉动页面时背景图不动    
  <STYLE>    
  body    
  {background-image:url(/blog/logo.gif);   background-repeat:no-repeat;    
  background-position:center;background-attachment:   fixed}    
  </STYLE>    
   
  28.   检查一段字符串是否全由数字组成  
  <script   language="Javascript"><!--  
  function   checkNum(str){return   str.match(//D/)==null}  
  alert(checkNum("1232142141"))  
  alert(checkNum("123214214a1"))  
  //   --></script>  
   
  29.   获得一个窗口的大小  
  document.body.clientWidth;   document.body.clientHeight  
   
  30.   怎么判断是否是字符  
  if   (/[^/x00-/xff]/g.test(s))   alert("含有汉字");  
  else   alert("全是字符");  
   
  31.TEXTAREA自适应文字行数的多少  
  <textarea   rows=1   name=s1   cols=27   onpropertychange="this.style.posHeight=this.scrollHeight">  
  </textarea>  
   
  32.   日期减去天数等于第二个日期  
  <script   language=Javascript>  
  function   cc(dd,dadd)  
  {  
  //可以加上错误处理  
  var   a   =   new   Date(dd)  
  a   =   a.valueOf()  
  a   =   a   -   dadd   *   24   *   60   *   60   *   1000  
  a   =   new   Date(a)  
  alert(a.getFullYear()   +   "年"   +   (a.getMonth()   +   1)   +   "月"   +   a.getDate()   +   "日")  
  }  
  cc("12/23/2002",2)  
  </script>  
   
  33.   选择了哪一个Radio  
  <HTML><script   language="vbscript">  
  function   checkme()  
  for   each   ob   in   radio1  
  if   ob.checked   then   window.alert   ob.value  
  next  
  end   function  
  </script><BODY>  
  <INPUT   name="radio1"   type="radio"   value="style"   checked>Style  
  <INPUT   name="radio1"   type="radio"   value="barcode">Barcode  
  <INPUT   type="button"   value="check"   onclick="checkme()">  
  </BODY></HTML>  
   
  34.脚本永不出错  
  <SCRIPT   LANGUAGE="JavaScript">    
  <!--   Hide    
  function   killErrors()   {    
  return   true;    
  }    
  window.onerror   =   killErrors;    
  //   -->    
  </SCRIPT>  
   
  35.ENTER键可以让光标移到下一个输入框  
  <input   onkeydown="if(event.keyCode==13)event.keyCode=9">  

  36.   检测某个网站的链接速度:  
  把如下代码加入<body>区域中:  
  <script   language=Javascript>  
  tim=1  
  setInterval("tim++",100)  
  b=1  
  var   autourl=new   Array()  
  autourl[1]="www.njcatv.net"  
  autourl[2]="javacool.3322.net"  
  autourl[3]="www.sina.com.cn"  
  autourl[4]="www.nuaa.edu.cn"  
  autourl[5]="www.cctv.com"  
  function   butt(){  
  document.write("<form   name=autof>")  
  for(var   i=1;i<autourl.length;i++)  
  document.write("<input   type=text   name=txt"+i+"   size=10   value="/blog/测试中......>"   =》<input   type=text    
  name=url"+i+"   size=40>   =》<input   type=button   value=GO    
   
  onclick=window.open(this.form.url"+i+".value)><br>")  
  document.write("<input   type=submit   value=刷新></form>")  
  }  
  butt()  
  function   auto(url)  
  else  
   
  b++  
  }  
  function   run(){for(var   i=1;i<autourl.length;i++)document.write("<img   src=http://"+autourl+"/"+Math.random()+"   width=1   height=1    
   
  onerror=auto("http://"+autourl+"")>")}  
  run()</script>  
   
  37.   各种样式的光标  
  auto   :标准光标  
  default   :标准箭头  
  hand   :手形光标  
  wait   :等待光标  
  text   :I形光标  
  vertical-text   :水平I形光标  
  no-drop   :不可拖动光标  
  not-allowed   :无效光标  
  help   :?帮助光标  
  all-scroll   :三角方向标  
  move   :移动标  
  crosshair   :十字标  
  e-resize  
  n-resize  
  nw-resize  
  w-resize  
  s-resize  
  se-resize  
  sw-resize  
   
  38.页面进入和退出的特效  
  进入页面<meta   http-equiv="Page-Enter"   content="revealTrans(duration=x,   transition=y)">  
  推出页面<meta   http-equiv="Page-Exit"   content="revealTrans(duration=x,   transition=y)">      
  这个是页面被载入和调出时的一些特效。duration表示特效的持续时间,以秒为单位。transition表示使用哪种特效,取值为1-23:  
    0   矩形缩小    
    1   矩形扩大    
    2   圆形缩小  
    3   圆形扩大    
    4   下到上刷新    
    5   上到下刷新  
    6   左到右刷新    
    7   右到左刷新    
    8   竖百叶窗  
    9   横百叶窗    
    10   错位横百叶窗    
    11   错位竖百叶窗  
    12   点扩散    
    13   左右到中间刷新    
    14   中间到左右刷新  
    15   中间到上下  
    16   上下到中间    
    17   右下到左上  
    18   右上到左下    
    19   左上到右下    
    20   左下到右上  
    21   横条    
    22   竖条    
    23   以上22种随机选择一种  
   
  39.在规定时间内跳转  
  <META   http-equiv=V="REFRESH"   content="5;URL=http://www.williamlong.info">    
   
  40.网页是否被检索  
  <meta   name="ROBOTS"   content="属性值">  
    其中属性值有以下一些:  
    属性值为"all":   文件将被检索,且页上链接可被查询;  
    属性值为"none":   文件不被检索,而且不查询页上的链接;  
    属性值为"index":   文件将被检索;  
    属性值为"follow":   查询页上的链接;  
    属性值为"noindex":   文件不检索,但可被查询链接;  
    属性值为"nofollow":   文件不被检索,但可查询页上的链接。  
   
  最大化窗口?  
  <script   language="JavaScript">  
  <!--  
  self.moveTo(0,0)  
  self.resizeTo(screen.availWidth,screen.availHeight)  
  //-->  
  </script>  
   
     
   
   
  解决问题:由于层与下拉框之间的优先级是:下拉框   >   层,因此在显示的时候,会因为优先级的次序而会出现如上问题。(如果几个元素都是层的话,我们可以通过层的   z-index   属性来设置)解决办法就是:给层中放一个优先级比下拉框更高的元素(iframe),从而解决此问题!具体解决代码如下:  
   
  <div   id="menu"   style="position:absolute;   visibility:hidden;   top:20px;   left:20px;   width:100px;   height:200px;   background-color:#6699cc;">  
  <table>  
      <tr><td>item   1</td></tr>  
      <tr><td>item   2</td></tr>  
      <tr><td>item   3</td></tr>  
      <tr><td>item   4</td></tr>  
      <tr><td>item   5</td></tr>  
      </table>  
      <iframe   src="/blog/javascript:false"   style="position:absolute;   visibility:inherit;   top:0px;   left:0px;   width:100px;   height:200px;   z-index:-1;   filter='progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)';"></iframe>  
  </div>  
   
  <a   href="#"   onclick="document.getElementById('menu').style.visibility='visible'">menu</a>  
   
  <form>  
      <select><option>A   form   selection   list</option></select>  
  </form>  
   
  输入框也可以做的很漂亮了  
  <div   align="center"><input   type="hidden"   name="hao"   value="yes">  
                              外向数:<input    
              name=answer    
              style="color:   rgb(255,0,0);   border-left:   medium   none;   border-right:   medium   none;   border-top:   medium   none;   border-bottom:   1px   solid   rgb(192,192,192)">  
                           没回答的题数:<input    
              name=unanswer   id="unanswer"    
              style="color:   rgb(255,0,0);   border-left:   medium   none;   border-right:   medium   none;   border-top:   medium   none;   border-bottom:   1px   solid   rgb(192,192,192)">  
                          <br>  
                          总得分:  
                          <input    
              name=score   id="score"    
              style="color:   rgb(255,0,0);   border-left:   medium   none;   border-right:   medium   none;   border-top:   medium   none;   border-bottom:   1px   solid   rgb(192,192,192)">  
                           结    论:  
                          <input    
              name=xgjg   id="xgjg"    
              style="color:   rgb(255,0,0);   border-left:   medium   none;   border-right:   medium   none;   border-top:   medium   none;   border-bottom:   1px   solid   rgb(192,192,192)">  
                          <br>  
                          <br>    
                           
                          <input   onClick=processForm(this.form)   style="FONT-FAMILY:   宋体;   FONT-SIZE:   9pt"   type=button   value=查看结果   name="button">    
                            <input   type="reset"   name="Submit"   value="重做">  
                          </div>  
  注意:修改<body>为<body   onload="max.Click()">即为打开最大  
   
  化窗口,而如果改为<body   onload="min.Click()">就变为窗口一打开就最小化  
   
  <object   id="min"   type="application/x-oleobject"   classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11">  
                          <param   name="Command"   value="Minimize">  
                      </object>   <object   id="max"   type="application/x-oleobject"   classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11">  
                          <param   name="Command"   value="Maximize">  
                      </object>  
  </body>  
   
  页面自动刷新(说明)  
   
  当你做网页时,是不是有的时候想让你的网页自动不停刷新,或者过一段时间自动跳转到另外一个你自己设定的页面?其实实现这个效果非常地简单,而且这个效果甚至不能称之为特效。你只要把如下代码加入你的网页中就可以了。  
   
  1,页面自动刷新:把如下代码加入<head>区域中<meta   http-equiv="refresh"   content="20">,其中20指每隔20秒刷新一次页面.  
   
  2,页面自动跳转:把如下代码加入<head>区域中<meta   http-equiv="refresh"   content="20;url=http://www.williamlong.info">,其中20指隔20秒后跳转到http://www.williamlong.info页面。    
   
  页面自动关闭  
   
  5000是指时间<body   onLoad="setTimeout(window.close,   5000)">    
   
  弹出窗口自动关闭    
   
  10秒后弹出窗口自动关闭  
   
  注意:在新的tan.htm的body中要加   <onLoad="closeit()">  
  head  
   
  <script   language="JavaScript">  
   
  <!--  
   
  var   gt   =   unescape('%3e');  
   
  var   popup   =   null;  
   
  var   over   =   "Launch   Pop-up   Navigator";  
   
  popup   =   window.open('',   'popupnav',   'width=225,height=235,resizable=1,scrollbars=auto');  
   
  if   (popup   !=   null)   {  
   
  if   (popup.opener   ==   null)   {  
   
  popup.opener   =   self;    
   
  }  
   
  popup.location.href   =   'tan.htm';  
   
  }  
   
  //   -->  
   
  </script>  
  <body>注意:这段代码是在新建文件中的  
  <script   language="JavaScript">  
   
    function   closeit()    
   
    </script>  
   
  这个可不是<iframe>(引用)呀。是直接调用的。以下代码加入<body>区域  
   
  <object   type="text/x-scriptlet"   width="800"     height="1000"   data="../index.htm">  
  </object>