JS各种小技巧

1. οncοntextmenu="window.event.returnvalue=false" 将彻底屏蔽鼠标右键
<table border οncοntextmenu=return(false)><td>no</table> 可用于table
2. <body onselectstart="return false" οnselect="return false"> 取消选取、防止复制
3. οnpaste="return false" 不准粘贴
4. οncοpy="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=http://www.cnblogs.com/*.html></iframe></noscript> 
11. <input type=button value=查看网页源代码 
οnclick="window.location = "view-source:"+ "http://www.pconline.com.cn"">
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){
t+=e.offsettop;
l+=e.offsetleft;
}
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" οnfοcus="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=最小化 οnclick=hh1.click()>
<input type=button value=最大化 οnclick=hh2.click()>
<input type=button value=关闭 οnclick=hh3.click()>
本例适用于ie
17.屏蔽功能键shift,alt,ctrl
<script>
function look(){ 
if(event.shiftkey) 
alert("禁止按shift键!"); //可以换成alt ctrl
} 
document.οnkeydοwn=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 οnblur="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="#" οnfοcus="this.blur()"><img src="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 οnlοad="top.resizeto(300,200);">
打开页面的位置<body οnlοad="top.moveby(300,200);">
27.在页面中如何加入不是满铺的背景图片,拉动页面时背景图不动 
<style> 
body 
{background-image:url(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" οnclick="checkme()">
</body></html>
34.脚本永不出错
<script language="javascript"> 
<!-- hide 
function killerrors() { 
return true; 
} 
window.onerror = killerrors; 
// --> 
</script>
35.enter键可以让光标移到下一个输入框
<input οnkeydοwn="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=测试中……> =》<input type=text 
name=url"+i+" size=40> =》<input type=button value=go 
οnclick=window.open(this.form.url"+i+".value)><br>")
document.write("<input type=submit value=刷新></form>")
}
butt()
function auto(url){
document.forms[0]["url"+b].value=url
if(tim>200)
{document.forms[0]["txt"+b].value="链接超时"}
else
{document.forms[0]["txt"+b].value="时间"+tim/10+"秒"}
b++
}
function run(){for(var i=1;i<autourl.length;i++)document.write("<img src=http://"+autourl+"/"+math.random()+" width=1 height=1 
οnerrοr=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.51js.com"> 
40.网页是否被检索
<meta name="robots" content="属性值">
  其中属性值有以下一些:
  属性值为"all": 文件将被检索,且页上链接可被查询;
  属性值为"none": 文件不被检索,而且不查询页上的链接;
  属性值为"index": 文件将被检索;
  属性值为"follow": 查询页上的链接;
  属性值为"noindex": 文件不检索,但可被查询链接;
  属性值为"nofollow": 文件不被检索,但可查询页上的链接。
41、email地址的分割
把如下代码加入<body>区域中
<a href="mailto:webmaster@sina.com">webmaster@sina.com</a>
42、流动边框效果的表格
把如下代码加入<body>区域中
<script>
l=array(6,7,8,9,'a','b','b','c','d','e','f')
nx=5;ny=35
t="<table border=0 cellspacing=0 cellpadding=0 height="+((nx+2)*16)+"><tr>"
for(x=nx;x<nx+ny;x++)
t+="<td width=16 id=a_mo"+x+"> </td>"
t+="</tr><tr><td width=10 id=a_mo"+(nx-1)+"> </td><td colspan="+(ny-2)+" rowspan="+(nx)+"> </td><td width=16 id=a_mo"+(nx+ny)+"></td></tr>"
for(x=2;x<=nx;x++)
t+="<tr><td width=16 id=a_mo"+(nx-x)+"> </td><td width=16 id=a_mo"+(ny+nx+x-1)+"> </td></tr>"
t+="<tr>"
for(x=ny;x>0;x--)
t+="<td width=16 id=a_mo"+(x+nx*2+ny-1)+"> </td>"
document.write(t+"</tr></table>")
var n=nx*2+ny*2
function f1(y){
for(i=0;i<n;i++){
c=(i+y)%20;if(c>10)c=20-c
document.all["a_mo"+(i)].bgcolor="'#0000"+l[c]+l[c]+"'"}
y++
settimeout('f1('+y+')','1')}
f1(1)
</script>
43、javascript主页弹出窗口技巧
窗口中间弹出
<script>
window.open("http://www.cctv.com","","width=400,height=240,top="+(screen.availheight-240)/2+",left="+(screen.availwidth-400)/2);
</script>
============
<html>
<head>
<script language="livescript">
function winopen() {
   msg=open("","displaywindow","toolbar=no,directories=no,menubar=no");
   msg.document.write("<head><title>哈 罗!</title></head>");
   msg.document.write("<center><h1>酷 毙 了!</h1><h2>这 是<b>javascript</b>所 开 的 视 窗!</h2></center>");
}
</script>
</head>
<body>
<form>
<input type="button" name="button1" value="push me" οnclick="winopen()">
</form>
</body>
</html>
==============
一、在下面的代码中,你只要单击打开一个窗口,即可链接到赛迪网。而当你想关闭时,只要单击一下即可关闭刚才打开的窗口。
   代码如下: 
  <script language="javascript"> 
  <!-- 
  function openclk() { 
  another=open('http://www.ccidnet.com','newwindow'); 
  } 
  function closeclk() { 
  another.close(); 
  } 
  //--> 
  </script> 
  <form> 
  <input type="button" name="open" value="打开一个窗口" οnclick="openclk()"> 
  <br> 
  <input type="button" name="close" value="关闭这个窗口" οnclick="closeclk()"> 
  </form> 
  二、上面的代码也太静了,为何不来点动感呢?如果能给页面来个降落效果那该多好啊! 
  代码如下: 
  <script> 
  function drop(n) { 
  if(self.moveby){ 
  self.moveby (0,-900); 
  for(i = n; i > 0; i--){ 
  self.moveby(0,3); 
  } 
  for(j = 8; j > 0; j--){ 
  self.moveby(0,j); 
  self.moveby(j,0); 
  self.moveby(0,-j); 
  self.moveby(-j,0); 
  } 
  } 
  } 
  </script> 
  <body οnlοad="drop(300)"> 
  三、讨厌很多网站总是按照默认窗口打开,如果你能随心所欲控制打开的窗口那该多好。 
  代码如下: 
  <script language="javascript"> 
  <!-- begin 
  function popuppage(l, t, w, h) { 
  var windowprops = "location=no,scrollbars=no,menubars=no,toolbars=no,resizable=yes" + 
  ",left=" + l + ",top=" + t + ",width=" + w + ",height=" + h; 
  var url = "http://www.80cn.com"; 
  popup = window.open(url,"menupopup",windowprops); 
  } 
  // end --> 
  </script> 
  <table> 
  <tr> 
  <td> 
  <form name=popupform> 
  <pre> 
  打开页面的参数<br> 
  离开左边的距离: <input type=text name=left size=2 maxlength=4> pixels 
  离开右边的距离: <input type=text name=top size=2 maxlength=4> pixels 
  窗口的宽度: <input type=text name=width size=2 maxlength=4> pixels 
  窗口的高度: <input type=text name=height size=2 maxlength=4> pixels 
  </pre> 
  <center> 
  <input type=button value="打开这个窗口!" οnclick="popuppage(this.form.left.value, this.form.top.value, this.form.width.value, this.form.height.value)"> 
  </center> 
  </form> 
  </td> 
  </tr> 
  </table>你只要在相对应的对话框中输入一个数值即可,将要打开的页面的窗口控制得很好。 
44、页面的打开移动
把如下代码加入<body>区域中
<script language="javascript">
<!-- begin
for (t = 2; t > 0; t--) {
for (x = 20; x > 0; x--) {
for (y = 10; y > 0; y--) {
parent.moveby(0,-x);
  }
}
for (x = 20; x > 0; x--) {
for (y = 10; y > 0; y--) {
parent.moveby(0,x);
  }
}
for (x = 20; x > 0; x--) {
for (y = 10; y > 0; y--) {
parent.moveby(x,0);
  }
}
for (x = 20; x > 0; x--) {
for (y = 10; y > 0; y--) {
parent.moveby(-x,0);
    }
  } 
}
//-->
//  end -->
</script>
45、显示个人客户端机器的日期和时间
<script language="livescript">
<!-- hiding
  today = new date()
  document.write("现 在 时 间 是: ",today.gethours(),":",today.getminutes())
  document.write("<br>今 天 日 期 为: ", today.getmonth()+1,"/",today.getdate(),"/",today.getyear());
// end hiding contents -->
</script>
46、自动的为你每次产生最後修改的日期了: 
<html>
<body>
this is a simple html- page.
<br>
last changes:
  <script language="livescript">
  <!--  hide script from old browsers
    document.write(document.lastmodified)
  // end hiding contents -->
  </script>
</body>
</html>
47、不能为空和邮件地址的约束:
<html>
<head>
<script language="javascript">
<!-- hide
function test1(form) {
  if (form.text1.value == "")
    alert("您 没 写 上 任 何 东 西, 请 再 输 入 一 次 !")
  else { 
   alert("嗨 "+form.text1.value+"! 您 已 输 入 完 成 !");
  }
}
function test2(form) {
  if (form.text2.value == "" || 
      form.text2.value.indexof('@', 0) == -1) 
        alert("这 不 是 正 确 的 e-mail address! 请 再 输 入 一 次 !");
  else alert("您 已 输 入 完 成 !");
}
// -->
</script>
</head>
<body>
<form name="first">
enter your name:<br>
<input type="text" name="text1">
<input type="button" name="button1" value="输 入 测 试" οnclick="test1(this.form)">
<p>
enter your e-mail address:<br>
<input type="text" name="text2">
<input type="button" name="button2" value="输 入 测 试" οnclick="test2(this.form)">
</body>
48、跑马灯
<html>
<head>
<script language="javascript">
<!-- hide
var scrtxt="怎麽样 ! 很酷吧 ! 您也可以试试."+"here goes your message the visitors to your page will "+"look at for hours in pure fascination...";
var lentxt=scrtxt.length;
var width=100;
var pos=1-width;
function scroll() {
  pos++;
  var scroller="";
  if (pos==lentxt) {
    pos=1-width;
  }
  if (pos<0) {
    for (var i=1; i<=math.abs(pos); i++) {
      scroller=scroller+" ";}
    scroller=scroller+scrtxt.substring(0,width-i+1);
  }
  else {
    scroller=scroller+scrtxt.substring(pos,width+pos);
  }
  window.status = scroller;
  settimeout("scroll()",150);
  }
//-->
</script>
</head>
<body οnlοad="scroll();return true;">
这里可显示您的网页 !
</body>
</html>
49、在网页中用按钮来控制前页,后页和主页的显示。
<html>
<body>
<form name="buttonbar">
     <input type="button" value="back" οnclick="history.back()">
     <input type="button" value="js- home" οnclick="location='script.html'">
     <input type="button" value="next" οnclick="history.forward()">
</form>
</body>
</html>
50、查看某网址的源代码
把如下代码加入<body>区域中
<script>
function add()
{
var ress=document.forms[0].luxiaoqing.value
window.location="view-source:"+ress;
}
</script>
输入要查看源代码的url地址:
<form><input type="text" name="luxiaoqing" size=40 value="http://"></form>
<form><br>
<input type="button" value="查看源代码" οnclick=add()>
</form>
51、title显示日期
把如下代码加入<body>区域中:
<script language="javascript1.2">
<!--hide
var isnmonth = new
array("1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月");
var isnday = new
array("星期日","星期一","星期二","星期三","星期四","星期五","星期六","星期日");
today = new date () ;
year=today.getyear();
date=today.getdate();
if (document.all)
document.title="今天是: "+year+"年"+isnmonth[today.getmonth()]+date+"日"+isnday[today.getday()]
//--hide-->
</script>
52、显示所有链接
把如下代码加入<body>区域中
<script language="javascript1.2">
<!--
function extractlinks(){
var links=document.all.tags("a")
var total=links.length
var win2=window.open("","","menubar,scrollbars,toolbar")
win2.document.write("<font size='2'>一共有"+total+"个连接</font><br>")
for (i=0;i<total;i++){
win2.document.write("<font size='2'>"+links[i].outerhtml+"</font><br>")
}
}
//-->
</script>
<input type="button" οnclick="extractlinks()" value="显示所有的连接">
53、回车键换行
把如下代码加入<body>区域中
<script type="text/javascript">                
function handleenter (field, event) {
  var keycode = event.keycode ? event.keycode : event.which ? event.which : event.charcode;
  if (keycode == 13) {
   var i;
   for (i = 0; i < field.form.elements.length; i++)
    if (field == field.form.elements[i])
     break;
   i = (i + 1) % field.form.elements.length;
   field.form.elements[i].focus();
   return false;
  } 
  else
  return true;
 }      
</script>
<form>
<input type="text" οnkeypress="return handleenter(this, event)"><br>
<input type="text" οnkeypress="return handleenter(this, event)"><br>
<textarea>回车换行
54、确认后提交
把如下代码加入<body>区域中
<script language="javascript">
<!--
function msg(){
if (confirm("你确认要提交嘛!"))
document.lnman.submit()
}
//-->
</script>
<form name="lnman" method="post" action="">
  <p>
    <input type="text" name="textfield" value="确认后提交">
  </p>
  <p>
    <input type="button" name="submit" value="提交" οnclick="msg();">
  </p>
</form>
55、改变表格的内容
把如下代码加入<body>区域中
<script language=javascript>
var arr=new array()
arr[0]="一一一一一";
arr[1]="二二二二二";
arr[2]="三三三三三";
</script>
<select οnchange="zz.cells[this.selectedindex].innerhtml=arr[this.selectedindex]">
  <option value=a>改变第一格</option>
  <option value=a>改变第二格</option>
  <option value=a>改变第三格</option>
</select>
<table id=zz border=1>
  <tr height=20>
    <td width=150>第一格</td>
 <td width=150>第二格</td>
 <td width=150>第三格</td>
  </tr>
</table>







1.document.write(""); 输出语句 
2.JS中的注释为// 
3.传统的HTML文档顺序是:document->html->(head,body) 
4.一个浏览器窗口中的DOM顺序是:window->(navigator,screen,history,location,document) 
5.得到表单中元素的名称和值:document.getElementById("表单中元素的ID号").name(或value) 
6.一个小写转大写的JS: document.getElementById("output").value = document.getElementById("i
nput").value.toUpperCase(); 
7.JS中的值类型:String,Number,Boolean,Null,Object,Function 
8.JS中的字符型转换成数值型:parseInt(),parseFloat() 
9.JS中的数字转换成字符型:(""+变量) 
10.JS中的取字符串长度是:(length) 
11.JS中的字符与字符相连接使用+号. 
12.JS中的比较操作符有:==等于,!=不等于,>,>=,<.<= 
13.JS中声明变量使用:var来进行声明 
14.JS中的判断语句结构:if(condition){}else{} 
15.JS中的循环结构:for([initial e­xpression];[condition];[upadte e­xpression]) {inside loop} 
16.循环中止的命令是:break 
17.JS中的函数定义:function functionName([parameter],...) 
18.当文件中出现多个form表单时.可以用document.forms[0],document.forms[1]来代替. 
19.窗口:打开窗口window.open(), 关闭一个窗口:window.close(), 窗口本身:self 
20.状态栏的设置:window.status="字符"; 
21.弹出提示信息:window.alert("字符"); 
22.弹出确认框:window.confirm(); 
23.弹出输入提示框:window.prompt(); 
24.指定当前显示链接的位置:window.location.href="URL" 
25.取出窗体中的所有表单的数量:document.forms.length 
26.关闭文档的输出流:document.close(); 
27.字符串追加连接符:+= 
28.创建一个文档元素:document.createElement(),document.createTextNode() 
29.得到元素的方法:document.getElementById() 
30.设置表单中所有文本型的成员的值为空: 
var form = window.document.forms[0] 
for (var i = 0; i if (form.elements.type == "text"){ 
form.elements.value = ""; 
} 
} 
31.复选按钮在JS中判断是否选中:document.forms[0].checkThis.checked (checked属性代表为是否选中
返回TRUE或FALSE) 
32.单选按钮组(单选按钮的名称必须相同):取单选按钮组的长度document.forms[0].groupName.length 
33.单选按钮组判断是否被选中也是用checked. 
34.下拉列表框的值:document.forms[0].selectName.options[n].value (n有时用下拉列表框名称加上.sel
ectedIndex来确定被选中的值) 
35.字符串的定义:var myString = new String("This is lightsword"); 
36.字符串转成大写:string.toUpperCase(); 字符串转成小写:string.toLowerCase(); 
37.返回字符串2在字符串1中出现的位置:String1.indexOf("String2")!=-1则说明没找到. 
38.取字符串中指定位置的一个字符:StringA.charAt(9); 
39.取出字符串中指定起点和终点的子字符串:stringA.substring(2,6); 
40.数学函数:Math.PI(返回圆周率),Math.SQRT2(返回开方),Math.max(value1,value2)返回两个数中的最
在值,Math.pow(value1,10)返回value1的十次方,Math.round(value1)四舍五入函数,Math.floor(Math.ra
ndom()*(n+1))返回随机数 
41.定义日期型变量:var today = new Date(); 
42.日期函数列表:dateObj.getTime()得到时间,dateObj.getYear()得到年份,dateObj.getFullYear()得到
四位的年份,dateObj.getMonth()得到月份,dateObj.getDate()得到日,dateObj.getDay()得到日期几,dat
eObj.getHours()得到小时,dateObj.getMinutes()得到分,dateObj.getSeconds()得到秒,dateObj.setTi
me(value)设置时间,dateObj.setYear(val)设置年,dateObj.setMonth(val)设置月,dateObj.setDate(va
l)设置日,dateObj.setDay(val)设置星期几,dateObj.setHours设置小时,dateObj.setMinutes(val)设置分,
dateObj.setSeconds(val)设置秒 [注意:此日期时间从0开始计] 
43.FRAME的表示方式: [window.]frames[n].ObjFuncVarName,frames["frameName"].ObjFuncVarN
ame,frameName.ObjFuncVarName 
44.parent代表父亲对象,top代表最顶端对象 
45.打开子窗口的父窗口为:opener 
46.表示当前所属的位置:this 
47.当在超链接中调用JS函数时用:(javascript :)来开头后面加函数名 
48.在老的浏览器中不执行此JS: 
49.引用一个文件式的JS: 
50.指定在不支持脚本的浏览器显示的HTML: 
51.当超链和onCLICK事件都有时,则老版本的浏览器转向a.html,否则转向b.html.例:dfsadf 
52.JS的内建对象有:Array,Boolean,Date,Error,EvalError,Function,Math,Number,Object,RangeError,
ReferenceError,RegExp,String,SyntaxError,TypeError,URIError 
53.JS中的换行:\n 
54.窗口全屏大小: 
55.JS中的all代表其下层的全部元素 
56.JS中的焦点顺序:document.getElementByid("表单元素").tabIndex = 1 
57.innerHTML的值是表单元素的值:如 
"how are you" 

,则innerHTML的值就是:how are you 
58.innerTEXT的值和上面的一样,只不过不会把这种标记显示出来. 
59.contentEditable可设置元素是否可被修改,isContentEditable返回是否可修改的状态. 
60.isDisabled判断是否为禁止状态.disabled设置禁止状态 
61.length取得长度,返回整型数值 
62.addBehavior()是一种JS调用的外部函数文件其扩展名为.htc 
63.window.focus()使当前的窗口在所有窗口之前. 
64.blur()指失去焦点.与FOCUS()相反. 
65.select()指元素为选中状态. 
66.防止用户对文本框中输入文本:οnfοcus="this.blur()" 
67.取出该元素在页面中出现的数量:document.all.tags("div(或其它HTML标记符)").length 
68.JS中分为两种窗体输出:模态和非模态.window.showModaldialog(),window.showModeless() 
69.状态栏文字的设置:window.status='文字',默认的状态栏文字设置:window.defaultStatus = '文字.'; 
70.添加到收藏夹:external.AddFavorite("http://www.dannyg.com"t;,"jaskdlf"); 
71.JS中遇到脚本错误时不做任何操作:window.onerror = doNothing; 指定错误句柄的语法为:window.on
error = handleError; 
72.JS中指定当前打开窗口的父窗口:window.opener,支持opener.opener...的多重继续. 
73.JS中的self指的是当前的窗口 
74.JS中状态栏显示内容:window.status="内容" 
75.JS中的top指的是框架集中最顶层的框架 
76.JS中关闭当前的窗口:window.close(); 
77.JS中提出是否确认的框:if(confirm("Are you sure?"))else{alert("Not Ok");} 
78.JS中的窗口重定向:window.navigate("http://www.sina.com.cn"t;); 
79.JS中的打印:window.print() 
80.JS中的提示输入框:window.prompt("message","defaultReply"); 
81.JS中的窗口滚动条:window.scroll(x,y) 
82.JS中的窗口滚动到位置:window.scrollby 
83.JS中设置时间间隔:setInterval("expr",msecDelay)或setInterval(funcRef,msecDelay)或setTimeou
t 
84.JS中的模态显示在IE4+行,在NN中不行:showModalDialog("URL"[,arguments][,features]); 
85.JS中的退出之前使用的句柄:function verifyClose(){event.returnValue="we really like you and ho
pe you will stay longer.";}} window.οnbefοreunlοad=verifyClose; 
86.当窗体第一次调用时使用的文件句柄:onload() 
87.当窗体关闭时调用的文件句柄:onunload() 
88.window.location的属性: protocol(http:),hostname(example.com),port(80),host(e
xample.com:80),pathname("/a/a.html"),hash("#giantGizmo",指跳转到相应的锚记),href(全部的信
息) 
89.window.location.reload()刷新当前页面. 
90.window.history.back()返回上一页,window.history.forward()返回下一页,window.history.go(返回
第几页,也可以使用访问过的URL) 
91.document.write()不换行的输出,document.writeln()换行输出 
92.document.body.noWrap=true;防止链接文字折行. 
93.变量名.charAt(第几位),取该变量的第几位的字符. 
94."abc".charCodeAt(第几个),返回第几个字符的ASCii码值. 
95.字符串连接:string.concat(string2),或用+=进行连接 
96.变量.indexOf("字符",起始位置),返回第一个出现的位置(从0开始计算) 
97.string.lastIndexOf(searchString[,startIndex])最后一次出现的位置. 
98.string.match(regExpression),判断字符是否匹配. 
99.string.replace(regExpression,replaceString)替换现有字符串. 
100.string.split(分隔符)返回一个数组存储值. 
101.string.substr(start[,length])取从第几位到指定长度的字符串. 
102.string.toLowerCase()使字符串全部变为小写. 
103.string.toUpperCase()使全部字符变为大写. 
104.parseInt(string[,radix(代表进制)])强制转换成整型. 
105.parseFloat(string[,radix])强制转换成浮点型. 
106.isNaN(变量):测试是否为数值型. 
107.定义常量的关键字:const,定义变量的关键字:var 
--------------------------------------------------------------------------------------------------------------------------------
javascript38种小技巧,推荐新手查看。
事件源对象 
event.srcElement.tagName 
event.srcElement.type 
捕获释放 
event.srcElement.setCapture(); 
event.srcElement.releaseCapture(); 
事件按键 
event.keyCode 
event.shiftKey 
event.altKey 
event.ctrlKey 
事件返回值 
event.returnValue 
鼠标位置 
event.x 
event.y 
窗体活动元素 
document.activeElement 
绑定事件 
document.captureEvents(Event.KEYDOWN); 
访问窗体元素 
document.all("txt").focus(); 
document.all("txt").select(); 
窗体命令 
document.execCommand 
窗体COOKIE 
document.cookie 
菜单事件 
document.oncontextmenu 
创建元素 
document.createElement("SPAN"); 
根据鼠标获得元素: 
document.elementFromPoint(event.x,event.y).tagName=="TD 
document.elementFromPoint(event.x,event.y).appendChild(ms) 
窗体图片 
document.images[索引] 
窗体事件绑定 
document.οnmοusedοwn=scrollwindow; 
元素 
document.窗体.elements[索引] 
对象绑定事件 
document.all.xxx.detachEvent('onclick',a); 
插件数目 
navigator.plugins 
取变量类型 
typeof($js_libpath) == "undefined" 
下拉框 
下拉框.options[索引] 
下拉框.options.length 
查找对象 
document.getElementsByName("r1"); 
document.getElementById(id); 
定时 
timer=setInterval('scrollwindow()',delay); 
clearInterval(timer); 
UNCODE编码 
escape() ,unescape 
父对象 
obj.parentElement(dhtml) 
obj.parentNode(dom) 
交换表的行 
TableID.moveRow(2,1) document.all.csss.href = "a.css"; 
替换CSS

并排显示 
display:inline 
隐藏焦点 
hidefocus=true 
根据宽度换行 
style="word-break:break-all" 
自动刷新 
<meta HTTP-EQUIV="refresh" CONTENT="8;URL=http://c98.yeah.net"> 
简单邮件 
<a href="mailto:aaa@bbb.com?subject=ccc&body=xxxyyy"> 
快速转到位置 
obj.scrollIntoView(true) 
锚 
<a name="first"> 
<a href="#first">anchors</a> 
网页传递参数 
location.search(); 
可编辑 
obj.contenteditable=true 
执行菜单命令 
obj.execCommand 
双字节字符 
/[^\x00-\xff]/ 
汉字 
/[\u4e00-\u9fa5]/ 
让英文字符串超出表格宽度自动换行 
word-wrap: break-word; word-break: break-all; 
透明背景 
<IFRAME src="1.htm" width=300 height=180 allowtransparency></iframe> 
获得style内容 
obj.style.cssText 
HTML标签 
document.documentElement.innerHTML 
第一个style标签 
document.styleSheets[0] 
style标签里的第一个样式 
document.styleSheets[0].rules[0] 
防止点击空链接时,页面往往重置到页首端。 
<a href="javascript:function()">word</a> 
上一网页源 
asp: 
request.servervariables("HTTP_REFERER") 
javascript: 
document.referrer 
释放内存 
CollectGarbage(); 
禁止右键 
document.oncontextmenu = function() { return false;} 
禁止保存 
<noscript><iframe src="*.htm"></iframe></noscript> 
禁止选取<body οncοntextmenu="return false" οndragstart="return false" onselectstart ="return false" οnselect="document.selection.empty()" οncοpy="document.selection.empty()" onbeforecopy="return false"οnmοuseup="document.selection.empty()> 
禁止粘贴 
<input type=text οnpaste="return false"> 
地址栏图标 
<link rel="Shortcut Icon" href="favicon.ico"> 
favicon.ico 名字最好不变16*16的16色,放虚拟目录根目录下 
收藏栏图标 
<link rel="Bookmark" href="favicon.ico"> 
查看源码 
<input type=button value=查看网页源代码 οnclick="window.location = 'view-source:'+ 'http://www.csdn.net/'"> 
关闭输入法 
<input style="ime-mode:disabled"> 
自动全选 
<input type=text name=text1 value="123" οnfοcus="this.select()"> 
ENTER键可以让光标移到下一个输入框 
<input οnkeydοwn="if(event.keyCode==13)event.keyCode=9"> 
文本框的默认值 
<input type=text value="123" οnfοcus="alert(this.defaultValue)"> 
title换行 
obj.title = "123 sdfs " 
获得时间所代表的微秒 
var n1 = new Date("2004-10-10".replace(/-/g, "\/")).getTime() 
窗口是否关闭 
win.closed 
checkbox扁平 
<input type=checkbox style="position: absolute; clip:rect(5px 15px 15px 5px)"><br> 
获取选中内容 
document.selection.createRange().duplicate().text 
自动完成功能 
<input type=text autocomplete=on>打开该功能 
<input type=text autocomplete=off>关闭该功能 
窗口最大化 
<body οnlοad="window.resizeTo(window.screen.width - 4,window.screen.height-50);window.moveTo(-4,-4)"> 
无关闭按钮IE 
window.open("aa.htm", "meizz", "fullscreen=7"); 
统一编码/解码 
alert(decodeURIComponent(encodeURIComponent("http://你好.com?as= hehe"))) 
encodeURIComponent对":"、"/"、";" 和 "?"也编码 
表格行指示 
<tr οnmοuseοver="this.bgColor='#f0f0f0'" οnmοuseοut="this.bgColor='#ffffff'"> 
------------------------------------------------------------------------------------------------------------------------------------------------

核心(Core) Javascript 学习手记 

核心(Core) Javascript 学习手记

linenum 

CreateD BY STABX, AT 2006-9-5. 

Javascript Notes By shawl.qiu 

---/------------------------------------------------------------- 

-3.1 函数比其他代码优先执行 
-3. 优先级 
-2.4 同时初始化多个变量并赋相同值 
-2.3 在函数中使用 var 定义一个变量, 该变量将影响整个函数, 不分先后. 
-2.2 全局变量与局部变量 
-2.1.2 普通定义变量 2 
-2.1.1 普通定义变量 1 
-2.1 普通定义变量 
-2. var 定义变量 
-1.5 in 操作符 
-1.4.2 true 等价 1, false 等价 0. 
-1.4 == 与 === 
-1.4.1 NaN 
-1.3 0/0=? 
-1.2 类型转换 
-1.1 -- 与 ++ 
-1.1.1 
-1. 运算符 

0. 语法 
0.1 Switch 

1. 按钮 
1.1 前进后退按钮 
1.2 确认按钮 
1.3 最原始也最实用的 UBB 代码输入方法——SCRIPT & FORM 
1.4 Prompt 
1.5.1 鼠标经过时选中,并隐藏原框的文字, 移开再显示文字 ——文本框 
1.5 鼠标经过时选中 ——复选框 Focus() 
1.6 鼠标经过自动提交表单 

2. 接收键盘事件 
2.1 按任何键关闭窗口 
2.2 实时显示更改的图片链接 

3. 数组/Array 
3.1 Javascript 结合 Asp 使用数组 

4. 控制图片大小 

5. 双击拷贝文本 

6. IE 全屏显示 

7. 文本框回车链接 

8. 顯示頁面所有元素 

9. 正则表达式 

10. 接收鼠标事件 
10.1 单击鼠标右击关闭窗口 (我用左手) 
10.2 鼠标移过选择表单项 

11. 字符串 
11.1 检测字符串中是否出现某字符 

12. 随机数 
12.1.1 生成 GUID 2 
12.1 生成 GUID 

13. 时间操作 
13.1 以毫秒为单位的倒计时跳转, 来源 CSDN 

14. switch 
14.1 简单 switch 
15 if 判断 
15.1.2 简单 if 判断 3 
15.1.1 简单 if 判断 2 
15.1 简单 if 判断 
15.2 if 判断的 三个 写法 
15.3 判断执行文件使用网络还是使用本地协议 
15.4 if...else 写法 

16. 简单 while 

16. while 

17. do while 
17.1.2 简单 do while 
17.1 简单 do while 

18. for 
18.1 简单 for 
18.2 简单 for 1 
18.3 循环列出从 a - z 的字母 
18.3 n阶乘 
18.4 Fibonacci Numbers 

19. for in 
19.1.1 简单 for in 1 
19.1 简单 for in 
19.2.1 for in 赋值 [数组] 1 
19.2 for in 赋值 [数组] 

20. try, catch, finally 
20.1.1 简单 try, catch 1 
20.1 简单 try, catch 

21. with 
21.1 简单with (另一写法) 
21.1 简单 with 

22. break, continue 
22.1 continue 
22.2.1 break 标签 
22.2 break 

23. call, apply 
23.1.1 找出数组中最大的数 
23.1 apply 

24. object 
24.1.1 创建简单对象 一 
24.1.2 创建简单对象 二 
24.1 创建简单对象 
24.2.1 创建嵌套对象 1 
24.2 创建嵌套对象 
24.3 删除对象中的属性 
24.4.1 遍历对象中的属性名 1 
24.4 遍历对象中的属性名 
24.5 obj.propertyIsEnumerable('ele') 
24.6 obj.hasOwnProperty('ele') 

25. toString 
25.1 使用 toString 列出数组中的元素 

26. Array() 
26.0.1 简单创建数组, 并赋值 2 
26.0 简单创建数组, 并赋值 
26.0.3 创建数组中的数组 
26.0.4 创建数组中的对象 
26.0.2 简单创建数组 
26.1 [array].push(), [array].pop() 
26.2 数组排序 
26.3 创建数组指定维数, 从 1 开始. 

27. RegExp 
27.1 普通操作 1 
27.2 test 语句 
27.3 exec 语句 

28. new 语法 

29. isNaN 

30. Date() 
30.1 输出年月日, 时分秒 的日期格式 

31. function 函数 
31.1.1.1 三种定义函数的方法 1.1 
31.10 在数组中存储函数, 并引用 
31.1.1 三种定义函数的方法 1 
31.1.2 三种定义函数的方法 2 
31.1 三种定义函数的方法 
31.2 在标签中写函数 
31.3 创建嵌套函数 
31.4.1 创建递归函数 1 
31.4 创建递归函数 
31.5 创建 函数对象 
31.6 在函数内部定义的函数只能在该函数内部调用 
31.7 定义函数变量, 并赋值 
31.8 变量引用函数 
31.9 在对象中存储函数, 并引用 
31.11 function.call() 
31.12 在函数内定义的变量可以被下级内嵌函数调用 

32. typeof 查看数据类型 
32.1 

33. obj.valueOf() 返回原始值 

34. Math 对象 
34.1.1 生成 1 至 4 的随机数 
34.1 Math.random(); 
34.2 求 x 的 n 次方 

35. delete 

36. confirm() 确认框 
36.1 带条件确认框 

37. window.open 

37. window 
37.1 打开没有焦点的窗口 

38. return 返回值 
38.1 return true 
38.2 return undefined 

39. throw 
39.1 简单产生错误 

40. arguments 
40.1 判断 arguments.length 
40.2 列出所有 argument 的值 
40.3 arguments.callee / 调用函数本身 

41. .to****** 
41.1 toString 

42. parseInt() / parseFolat() 

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

42. parseInt() / parseFolat() 
<script type="text/javascript"> 
//<![CDATA[ 
var str='1.1322 this test '; 
document.write(('str like this: ').bold()+str.fontcolor('red')+'<br/>'); 
document.write(('parseInt(str): ').bold()+parseInt(str)+'<br/>'); 
document.write(('parseFloat(str): ').bold()+parseFloat(str)+'<br/>'); 

document.write(('parseInt(1111,2): ').bold()+parseInt(1111,2)+'<br/>'); 
document.write(('parseInt(1111,8): ').bold()+parseInt(1111,8)+'<br/>'); 
document.write(('parseInt(1111): ').bold()+parseInt(1111)+'<br/>'); 
document.write(('parseInt(1111,16): ').bold()+parseInt(1111,16)+'<br/>'); 
//]]> 
</script> 

41. .to****** 
<script type="text/javascript"> 
//<![CDATA[ 
var num=12345.6789 

document.write(('parseInt(num): ').bold()+parseInt(num)+'<br/>'); 

document.write(('num.toFixed(0): ').bold()+num.toFixed(0)+'<br/>'); 
document.write(('num.toFixed(2): ').bold()+num.toFixed(2)+'<br/>'); 

document.write(('num.toExponential(2): ').bold()+num.toExponential(2)+'<br/>'); 
document.write(('num.toExponential(1): ').bold()+num.toExponential(1)+'<br/>'); 

document.write(('num.toPrecision(1): ').bold()+num.toPrecision(1)+'<br/>'); 
document.write(('num.toPrecision(2): ').bold()+num.toPrecision(2)+'<br/>'); 

//]]> 
</script> 

41.1 toString 
<script type="text/javascript"> 
//<![CDATA[ 
var num=123456789 

document.write(('num.toString(): ').bold()+num.toString()+'<br/>'); 
document.write(('num.toString(2): ').bold()+num.toString(2)+'<br/>'); 
document.write(("'0'+num.toString(8): ").bold()+'0'+num.toString(8)+'<br/>'); 
document.write(("'0x'+num.toString(16): ").bold()+'0x'+num.toString(16)+'<br/>'); 

//]]> 
</script> 



40. arguments 

40.1 判断 arguments.length 
<script type="text/javascript"> 
//<![CDATA[ 
function t(a, b, c, d){ 
if(arguments.length!=4)document.write(('error! argument must be 4 element.').fontcolor('red')+' current arguments length: '+arguments.length+'<br/>'); 
else document.write(('this right: '+arguments.length).bold()+' arguments<br/>'); 
} 
t(); 
t('a', 'b', 'c', 'd'); 
t('a', 'b', 'c', 'd', 'e'); 
//]]> 
</script> 

40.2 列出所有 argument 的值 
<script type="text/javascript"> 
//<![CDATA[ 
function t(){ 
for(var i=0; i<arguments.length; i++){ 
document.write(('arguments['+i+']').bold()+' = '+arguments[i].fontcolor('red')+'<br/>'); 
} 
} 
var temp='test'; 
t('aaa', 'bbb', 'ccc', 'ddd', 'eee', temp); 
//]]> 
</script> 

40.3 arguments.callee / 调用函数本身 
<script type="text/javascript"> 
//<![CDATA[ 
var t=function(x){ 
document.write(x+'<br/>'); 
if(x>1){ 
arguments.callee(x-1); 
} 
} 
t(10); 
//]]> 
</script> 

39. throw 

39.1 简单产生错误 
<script type="text/javascript"> 
//<![CDATA[ 
t(10); 
t(); 

function t(x){ 
if(typeof x==='undefined')throw new Error('x must be own a value'); 
document.write(x); 
} 
//]]> 
</script> 

38. return 返回值 

38.1 return true 
<script type="text/javascript"> 
//<![CDATA[ 
function t(ipt){ 
window.status=ipt; 
return true; 
} 
t('test this'); 
//]]> 
</script> 

38.2 return undefined 
<script type="text/javascript"> 
//<![CDATA[ 
function t(t){ 
if(t==null)return; 
} 
document.write(t()); // undefined 
//]]> 
</script> 

37. window 

37. window.open 

37.1 打开没有焦点的窗口 
<script type="text/javascript"> 
//<![CDATA[ 
var w=window.open('/') 
w.blur(); 
window.focus(); 
//]]> 
</script> 

36. confirm() 确认框 

36.1 带条件确认框 
<script type="text/javascript"> 
//<![CDATA[ 
var x=confirm('what doing with you') 
if(x){alert('ok')}else alert('good choice'); 
//]]> 
</script> 

35. delete 
<script type="text/javascript"> 
//<![CDATA[ 
var t={i:'ok', j:'ok too'} 
document.write(delete t.i); // true 
document.write('<br/>'); 
document.write(delete t); // false 不能删除 使用 var 定义的变量或对象 
document.write('<br/>'); 
document.write(delete n); // true 删除不存在的元素. 
document.write('<br/>'); 
document.write(delete j); // true 
document.write('<br/>'); 
//]]> 
</script> 

34. Math 对象 

34.1 Math.random(); 

34.1.1 生成 1 至 4 的随机数 
<script type="text/javascript"> 
//<![CDATA[ 
document.write(parseInt(Math.random()*4+1)+'<br/>'); 
//]]> 
</script> 

34.2 求 x 的 n 次方 
<script type="text/javascript"> 
//<![CDATA[ 
document.write(Math.pow(2,10)); 
//]]> 
</script> 

33. obj.valueOf() 返回原始值 
<script type="text/javascript"> 
//<![CDATA[ 
var a=1, b='test', c=false, d=new Object(); 
document.write(a.valueOf()+'<br/>'); // 1 
document.write(b.valueOf()+'<br/>'); // test 
document.write(c.valueOf()+'<br/>'); // false 
document.write(d.valueOf()+'<br/>'); // [object Object] 
//]]> 
</script> 

32. typeof 查看数据类型 
<script type="text/javascript"> 
//<![CDATA[ 
var a=['a', 'b', 'c'] 
document.write(typeof a); // object 
document.write(a.valueOf()); // a, b, c 
document.write(typeof null); // object 
//]]> 
</script> 

32.1 
<script type="text/javascript"> 
//<![CDATA[ 
var a=['a', 'b', 'c'] 
document.write(typeof a); // object 
document.write(a.valueOf()); // a, b, c 
//]]> 
</script> 

31. function 函数 

31.1 三种定义函数的方法 
<script type="text/javascript"> 
//<![CDATA[ 
function f(){ alert('function f');}; 
var f1=function(){ alert('function f1');}; 
var f2=new Function('', "alert('function f2')"); 
f(); f1(); f2(); 
//]]> 
</script> 

31.1.1 三种定义函数的方法 1 
<script type="text/javascript"> 
//<![CDATA[ 
var t=new Function('a', 'b', 'return a+b;') 
document.write(t('ok ', 'test this')); 
//]]> 
</script> 

31.1.1.1 三种定义函数的方法 1.1 
<script type="text/javascript"> 
//<![CDATA[ 
var t=new Function("return 'test this'") 
document.write(t()); 
//]]> 
</script> 

31.1.2 三种定义函数的方法 2 
<script type="text/javascript"> 
//<![CDATA[ 
var t=function(str){return 'this test'+str}; 

document.write(t(', right.')); 
//]]> 
</script> 

31.2 在标签中写函数 
<div οnclick="javascript:var go=function(){alert(111)};go();">div 可用</div> 
<div οnclick="go()">div1 不可用</div> 
<div οnclick="javascript:( function(){alert(111);} )()">div2 可用</div> 
<div οnclick="javascript:function go(){alert(111);}go();">div3 可用</div> 

31.3 创建嵌套函数 
<script type="text/javascript"> 
//<![CDATA[ 
function level1(){ 
var lNm='level 1' 
document.write(lNm+'<br/>'); 
function level2(){ 
var lNm='level 2' 
document.write(lNm+'<br/>'); 
} 
level2(); 
} 
level1(); 
//]]> 
</script> 

31.4 创建递归函数 
<% 
var i=0; 
function t(){ 
i++; 
if(i<100){ 
Response.Write(i+'<br/>'); 
return t(); 
} 
Response.Write(i+'<br/>'); 
} 
t(); 
%> 

31.4.1 创建递归函数 1 
<script type="text/javascript"> 
//<![CDATA[ 
function fctr(n){ 
if(n<=1)return 1; 
return n*fctr(n-1); 
} 
document.write(fctr(4)); 
//]]> 
</script> 

31.5 创建 函数对象 
<script type="text/javascript"> 
//<![CDATA[ 
function fT(){ 
this.title='o test'; 
this.subtitle=fTt(); 
function fTt(){ 
return 'o subtitle'; 
} 
} 
var t=new fT(); 
document.write(t.title+'<br/>'); 
document.write(t.subtitle+'<br/>'); 
t=null; 
//]]> 
</script> 

31.6 在函数内部定义的函数只能在该函数内部调用 
<script type="text/javascript"> 
//<![CDATA[ 
function lev1(){ 
document.write('lev 1<br/>'); 
function lev2(){ 
document.write('lev 2<br/>'); 
} 
lev2(); 
} 
lev1(); 
lev2(); // 出错, 在函数内部定义的函数只能在该函数内部调用 

//]]> 
</script> 

31.7 定义函数变量, 并赋值 
<script type="text/javascript"> 
//<![CDATA[ 
var t=(function(str){return str+str+'<br/>';})('test this ') 
document.write(t); 
//]]> 
</script> 

31.8 变量引用函数 
<script type="text/javascript"> 
//<![CDATA[ 
function t(x){ 
x+=''; 
return x+x; 
} 
document.write(t('how fun ')+'<br>'); // how fun how fun 
var u=t // u 引用 函数 t 
document.write(u('how fun too ')+'<br>'); // how fun too how fun too 
//]]> 
</script> 

31.9 在对象中存储函数, 并引用 
<script type="text/javascript"> 
//<![CDATA[ 
var o=new Object(); 
o.t=function(x){x+=''; return x+x;} 
var t=o.t('test this '); 
document.write(t); 
//]]> 
</script> 

31.10 在数组中存储函数, 并引用 
<script type="text/javascript"> 
//<![CDATA[ 
var a=new Array(3); 
a[0]=function(x){x+='';return x+x}; 
a[1]='test this '; 
a[2]=a[0](a[1]); 
document.write(a[2]); 
//]]> 
</script> 

31.11 function.call() 
<script type="text/javascript"> 
//<![CDATA[ 
var o=new Object(); 
function f(a, b){ 
return a+b 
} 
document.write(f.call(o, 1, 2)); 
//]]> 
</script> 

31.12 在函数内定义的变量可以被下级内嵌函数调用 
<script type="text/javascript"> 
//<![CDATA[ 
function t(){ 
var x=" this's test "; 
function u(){ 
document.write(x.bold()); 
} 
u(); 
} 
t(); 
//]]> 
</script> 

30. Date() 

30.1 输出年月日, 时分秒 的日期格式 
<script type="text/javascript"> 
//<![CDATA[ 
var $dt=new Date(); 
document.write('yyyy-nn-dd: '+$dt.toLocaleDateString()+'<br/>'); 
document.write('hh-mm-ss: '+$dt.toLocaleTimeString()); 
//]]> 
</script> 

29. isNaN 
<script type="text/javascript"> 
//<![CDATA[ 
var $str='this is string'; 
var $num=12.3; 
//alert(isNaN($str)); 
alert(isNaN($num)); 
//]]> 
</script> 

28. new 语法 
new Boolean(false) 
new Number(0) 
new String("") 
new Array() 
new Object() 
new Date(); 
new Error(); 

27. RegExp 

27.1 普通操作 1 
<script type="text/javascript"> 
//<![CDATA[ 
var $str='this is a test' 
with(document){ 
write('test str is: '+$str+'<br/>'); 
write('$str.search(/is a/i): '+$str.search(/is a/i)+'<p/>'); 

write('$str.replace(/ {1,1}/ig,"--"): '+$str.replace(/ {1,1}/ig,"--")+'<p/>'); 

write('$str.match(/t[\S]{1,3}/ig): '+$str.match(/t[\S]{1,3}/ig)+'<p/>'); 

var $temp=$str.match(/(t[\S]{1,3})/ig) 
for ($i=0; $i<$temp.length; $i++){ 
write($temp[$i]+'<br/>'); 
} 
} 
//]]> 
</script> 

27.2 test 语句 
<script type="text/javascript"> 
//<![CDATA[ 
var $pattern=/this/i; 
alert($pattern.test('this is a test')); 
//]]> 
</script> 

27.3 exec 语句 
<script type="text/javascript"> 
//<![CDATA[ 
var $pattern=/this/ig; 
var $str='this is a test, this is repeat'; 
var $result; 
while(($result=$pattern.exec($str))!=null){ 
alert($result[0]+'>>> index of str: '+$result.index+' $pattern lastIndex: '+$pattern.lastIndex); 
} 
//]]> 
</script> 

26. Array() 

26.0 简单创建数组, 并赋值 
<script type="text/javascript"> 
//<![CDATA[ 
var ar=new Array(); 
for(var i=0; i<10; i++){ 
ar[i]='array '+i 
document.write(ar[i]+'<br/>'); 
} 
//]]> 
</script> 

26.0.1 简单创建数组, 并赋值 2 
<script type="text/javascript"> 
//<![CDATA[ 
var ar=['v1', 'v2', 'v3', 'v4', 'v5'] 
for(var i=0; i<ar.length; i++){ 
document.write(ar[i]+'<br/>'); 
} 
//]]> 
</script> 

26.0.2 简单创建数组 
<script type="text/javascript"> 
//<![CDATA[ 
var ar=new Array(10); 
document.write(ar.length); 
//]]> 
</script> 

26.0.3 创建数组中的数组 
<script type="text/javascript"> 
//<![CDATA[ 
var ar=new Array('v1', 'v2', 'v3', ['v41', 'v42']); 
for(var i=0; i<ar.length; i++){ 
document.write(ar[i].toString()+'<br/>'); 
} 
//]]> 
</script> 

26.0.4 创建数组中的对象 
<script type="text/javascript"> 
//<![CDATA[ 
var ar=new Array('v1', 'v2', 'v3', {x:'v41', y:'v42'}); 
for(var i=0; i<ar.length; i++){ 
if(typeof(ar[i])=='string') 
document.write(ar[i]+'<br/>'); 
else if(typeof(ar[i])=='object'){ 
document.write('object<br/>'); 
for(var j in ar[i]){ 
document.write('obj: '+j+' obj val '+ar[i][j]+'<br/>'); 
} 
} 
} 
//]]> 
</script> 

26.1 [array].push(), [array].pop() 
<script type="text/javascript"> 
//<![CDATA[ 
var $array=new Array('a', 'b', 'c', 'd', 'e') 

with(document){ 
write('source $array.join: '+$array.join()+'<br/>'); 
write ($array.length+'<br/>'); 
$array.push(1,1,1,1,1,1,1,1,1,1); 
write ('$array.push(1,1,1,1,1,1,1,1,1,1), $array.length: '+$array.length+'<br/>'); 
write('join $array: '+$array.join()+'<p/>'); 

write ($array.length+'<br/>'); 
$array.push(1, 2, 3, 4, 5); 
write ('$array.push(1, 2, 3, 4, 5), $array.length: '+$array.length+'<br/>'); 
write('join $array: '+$array.join()+'<p/>'); 

write('$array.pop(): '+$array.pop()+'<br/>'); 
write('$array.length & $array.join(): '+$array.length+' '+$array.join()+'<p/>'); 

write('$array.pop(10): '+$array.pop(10)+'<br/>'); 
write('$array.length & $array.join(): '+$array.length+' '+$array.join()+'<br/>'); 
} 
//]]> 
</script> 

26.2 数组排序 
<script type="text/javascript"> 
//<![CDATA[ 
var a=new Array(); 
for (var i=0, j=1; i<10;a[i]=j, i++, j++); 

document.write('<h2>未排序前:</h2>'); 
document.write(a.join()); 

document.write('<h2>无条件排序:</h2>'); 
document.write(a.sort().join()); 

temp=a.sort(function(a, b){return a-b}); 
document.write('<h2>a-b 排序:</h2>'); 
document.write(temp.join()); 

temp=a.sort(function(a, b){return b-a}); 
document.write('<h2>b-a 排序:</h2>'); 
document.write(temp.join()); 
//]]> 
</script> 

26.3 创建数组指定维数, 从 1 开始. 
<script type="text/javascript"> 
//<![CDATA[ 
var a=new Array(3); 
document.write((a.length+'').bold()+'<br/>'); 
for(var i=0; i<a.length; i++){ 
document.write(i+'<br/>'); 
} 
//]]> 
</script> 

25. toString 

25.1 使用 toString 列出数组中的元素 
<script type="text/javascript"> 
//<![CDATA[ 
var $array=new Array('a', 'a1', 'a2'); 
alert($array.toString()); 
//]]> 
</script> 

24. object 

24.1 创建简单对象 
<script type="text/javascript"> 
//<![CDATA[ 
var $obj=new Object(); 
$obj={$title:"object example", $date:Date()} 
alert($obj.$date); 
//]]> 
</script> 

24.1.1 创建简单对象 一 
<script type="text/javascript"> 
//<![CDATA[ 
var cnt=new Object(); 
cnt.title='title this'; 
cnt.content='content this' 
cnt.date='the publishing date of '+Date(); 

document.write('title: '+cnt.title+'<br/>cnt.content: '+cnt.content+'<br/>cnt.date: '+cnt.date); 
//]]> 
</script> 

24.1.2 创建简单对象 二 
<script type="text/javascript"> 
//<![CDATA[ 
var cnt={ 
title:'title this', 
content:'content this', 
date:'the publishing date of '+Date() 
} 
document.write('title: '+cnt.title+'<br/>cnt.content: '+cnt.content+'<br/>cnt.date: '+cnt.date); 
//]]> 
</script> 

24.2 创建嵌套对象 
<script type="text/javascript"> 
//<![CDATA[ 
var cnt={ 
title:{ 
headertitle:'header title', 
subtitle:'subtitle this' 
}, 
content:'content this', 
date:'the publishing date of '+new Date().toLocaleString() 
} 
document.write('title: '+cnt.title.headertitle.bold().fontcolor('red')+ 
'<br/>cnt.title.subtitle: '+cnt.title.subtitle.fontcolor('blue')+ 
'<br/>cnt.content: '+cnt.content.fontcolor('goldenrod')+ 
'<br/>cnt.date: '+cnt.date); 
//]]> 
</script> 

24.2.1 创建嵌套对象 1 
<script type="text/javascript"> 
//<![CDATA[ 
var o=new Object(); 
o.title=' this title '; 
o.content=' this content'; 
o.lve=new Object(); 
o.lve.title=' this o.lve title'; 
o.lve.content=' this o.lve content'; 

document.write('o.title: '+o.title.bold()+'<br/>'); 
document.write('o.content: '+o.content.bold()+'<br/>'); 
document.write('o.lve.title: '+o.lve.title.bold()+'<br/>'); 
document.write('o.lve.content: '+o.lve.content.bold()+'<br/>'); 
//]]> 
</script> 

24.3 删除对象中的属性 
<script type="text/javascript"> 
//<![CDATA[ 
var $obj=new Object(); 
$obj={$title:"object example", $date:Date()} 
//alert($obj.$date); 

var $name=""; 
for(name in $obj)$name+=name+'\n'; 
alert($name); 

delete $obj.$date 

var $name=""; 
for(name in $obj)$name+=name+'\n'; 
alert($name); 
//]]> 
</script> 

24.4 遍历对象中的属性名 
<script type="text/javascript"> 
//<![CDATA[ 
var $obj=new Object(); 
$obj={$title:"object example", $date:Date()} 
//alert($obj.$date); 

var $name=""; 
for(name in $obj)$name+=name+'\n'; 
alert($name); 
//]]> 
</script> 

24.4.1 遍历对象中的属性名 1 
<script type="text/javascript"> 
//<![CDATA[ 
var o=new Object(); 
o.title=' this title '; 
o.content=' this content'; 
o.lve=new Object(); 
o.lve.title=' this o.lve title'; 
o.lve.content=' this o.lve content'; 

for (var i in o){ 
if(typeof o[i]!=='object'){ 
document.write('object o, element: '+i.fontcolor('red')+' value: '+o[i].bold()+'<br/>'); 
} else { 
document.write('object '+i+' element<br/>'); 
for(var j in o[i]){ 
document.write('subobject element :'+j.fontcolor('red')+ 
' subobject value: '+o[i][j].bold()+'<br/>'); 
} 
} 
} 
//]]> 
</script> 

24.5 obj.propertyIsEnumerable('ele') 
<script type="text/javascript"> 
//<![CDATA[ 
var d=new Date(); 
d.x='test'; 
var s=new String(); 
var o=new Object(); 
var f=new Function('thest') 

document.write(d.propertyIsEnumerable('x')); 
document.write(d.propertyIsEnumerable('y')); 
//]]> 
</script> 

24.6 obj.hasOwnProperty('ele') 
<script type="text/javascript"> 
//<![CDATA[ 
var d=new Date(); 
d.x='test'; 
var s=new String(); 
var o=new Object(); 
var f=new Function('thest') 

document.write(d.hasOwnProperty('x')); 
document.write(d.hasOwnProperty('y')); 
//]]> 
</script> 

23. call, apply 

23.1 apply 

23.1.1 找出数组中最大的数 
<script type="text/javascript"> 
//<![CDATA[ 
$array=new Array(2, 9, 12, 33, 2, 4444, 22) 
var $temp=Math.max.apply(null, $array) 
alert($temp) 
//]] 
</script> 

22. break, continue 

22.1 continue 
<script type="text/javascript"> 
//<![CDATA[ 
for (var $i=0; $i<10; $i++){ 
if($i==5){continue;} 
document.write ($i+'<br/>') 
} 
//]]> 
</script> 

22.2 break 

22.2.1 break 标签 
<script type="text/javascript"> 
//<![CDATA[ 
//document.write('<xmp>'); 
outerloop: 
for (var i=0; i<10; i++){ 
document.writeln(('outerloop:'+i).bold()+'<br/>') 
innerloop: 
for(var j=0; j<10; j++){; 
if(i==5)break outerloop; 
if(j==9)break innerloop; 
document.writeln(('innerloop: '+j).fontcolor('blue')+'<br/>'); 
} 
} 
//document.write('</xmp>'); 
//]]> 
</script> 

21. with 

21.1 简单 with 
<script type="text/javascript"> 
//<![CDATA[ 
with(document){ 
write('ok'); 
} 
//]]> 
</script> 

21.1 简单with (另一写法) 
var $dw=document 
$dw.write('ok this a test'); 

20. try, catch, finally 

20.1 简单 try, catch 
try{ 
5*kkk 
} 
catch(e){ 
alert(e) 
} 

20.1.1 简单 try, catch 1 
<script type="text/javascript"> 
//<![CDATA[ 
document.write('<h2>window object:</h2>'); 
for(var i in window){ 
try{ 
document.write(i.bold()+' '+(window[i]+'').fontcolor('blue')+'<br/>'); 
} catch (e) { 
document.write(i.fontcolor('red').bold()+': '); 
document.write(e.description.fontcolor('red')+'<br/>'); 
} 
} 
//]]> 
</script> 

19. for in 

19.1 简单 for in 
<script type="text/javascript"> 
//<![CDATA[ 
/* document.write('<h2>top object:</h2>'); 
for(var i in top){ 
try{ 
document.write(i.bold()+' '+(top[i]+'').fontcolor('blue')+'<br/>'); 
} catch (e) { 
document.write(i.fontcolor('red').bold()+': '); 
document.write(e.description.fontcolor('red')+'<br/>'); 
} 
} 

document.write('<h2>parent object:</h2>'); 
for(var i in parent){ 
try{ 
document.write(i.bold()+' '+(parent[i]+'').fontcolor('blue')+'<br/>'); 
} catch (e) { 
document.write(i.fontcolor('red').bold()+': '); 
document.write(e.description.fontcolor('red')+'<br/>'); 
} 
} 

document.write('<h2>screen object:</h2>'); 
for(var i in screen){ 
try{ 
document.write(i.bold()+' '+(screen[i]+'').fontcolor('blue')+'<br/>'); 
} catch (e) { 
document.write(i.fontcolor('red').bold()+': '); 
document.write(e.description.fontcolor('red')+'<br/>'); 
} 
} 
*/ 
try{ 
document.write('<h2>clipboardData object:</h2>'); 
for(var i in clipboardData){ 
try{ 
document.write(i.bold()+' '+(clipboardData[i]+'').fontcolor('blue')+'<br/>'); 
} catch (e) { 
document.write(i.fontcolor('red').bold()+': '); 
document.write(e.description.fontcolor('red')+'<br/>'); 
} 
} 
} catch(ex) { 
document.write((ex+'').fontcolor('red')); 
} 

document.write('<h2>window object:</h2>'); 
for(var i in window){ 
try{ 
document.write(i.bold()+' '+(window[i]+'').fontcolor('blue')+'<br/>'); 
} catch (e) { 
document.write(i.fontcolor('red').bold()+': '); 
document.write(e.description.fontcolor('red')+'<br/>'); 
} 
} 
/* 
document.write('<h2>Option object:</h2>'); 
for(var i in Option){ 
try{ 
document.write(i.bold()+' '+(Option[i]+'').fontcolor('blue')+'<br/>'); 
} catch (e) { 
document.write(i.fontcolor('red').bold()+': '); 
document.write(e.description.fontcolor('red')+'<br/>'); 
} 
} 
*/ 
document.write('<h2>frames object:</h2>'); 
for(var i in frames){ 
try{ 
document.write(i.bold()+' '+(frames[i]+'').fontcolor('blue')+'<br/>'); 
} catch (e) { 
document.write(i.fontcolor('red').bold()+': '); 
document.write(e.description.fontcolor('red')+'<br/>'); 
} 
} 
/* 
document.write('<h2>self object:</h2>'); 
for(var i in self){ 
try{ 
document.write(i.bold()+' '+(self[i]+'').fontcolor('blue')+'<br/>'); 
} catch (e) { 
document.write(i.fontcolor('red').bold()+': '); 
document.write(e.description.fontcolor('red')+'<br/>'); 
} 
} 
*/ 
document.write('<h2>document object:</h2>'); 
for(var i in document){ 
document.write(i.bold()+' '+(document[i]+'').fontcolor('blue')+'<br/>'); 
} 

document.write('<h2>history object:</h2>'); 
for(var i in history){ 
try{ 
document.write(i.bold()+' '+(history[i]+'').fontcolor('blue')+'<br/>'); 
} catch (e) { 
document.write(i.fontcolor('red').bold()+': '); 
document.write(e.description.fontcolor('red')+'<br/>'); 
} 
} 
/* 
document.write('<h2>Image object:</h2>'); 
for(var i in Image){ 
try{ 
document.write(i.bold()+' '+(Image[i]+'').fontcolor('blue')+'<br/>'); 
} catch (e) { 
document.write(i.fontcolor('red').bold()+': '); 
document.write(e.description.fontcolor('red')+'<br/>'); 
} 
} 
*/ 
document.write('<h2>navigator object:</h2>'); 
for(var i in navigator){ 
try{ 
document.write(i.bold()+' '+(navigator[i]+'').fontcolor('blue')+'<br/>'); 
} catch (e) { 
document.write(i.fontcolor('red').bold()+': '); 
document.write(e.description.fontcolor('red')+'<br/>'); 
} 
} 

document.write('<h2>location object:</h2>'); 
for(var i in location){ 
document.write(i.bold()+' '+(location[i]+'').fontcolor('blue')+'<br/>'); 
} 
//]]> 
</script> 

19.1.1 简单 for in 1 
for (var $i in window){ 
document.write($i+'<br/>'); 
} 

19.2 for in 赋值 [数组] 
var $array=new Array(); 
var i=0; 
for ($array[i++] in window){ 
//document.write($i+'<br/>'); 
} 
alert($array[0]); 

19.2.1 for in 赋值 [数组] 1 
<script type="text/javascript"> 
//<![CDATA[ 
var o={a:'aaa', b:'bbb', c:'ccc'}; 
var a=new Array(); 
var i=0; 
for(a[i++] in o)document.write(a[i-1]); 
//for(i in a)document.write(a[i]); 
//]]> 
</script> 

18. for 

18.1 简单 for 
for (var $i=0; $i<10; $i++) { 
document.write($i) 
} 

18.2 简单 for 1 
for (var $i=0, $j=10; $i<10; $i++, $j--) { 
document.write(($i*$j)+'<br/>') 
} 

18.3 循环列出从 a - z 的字母 
<script type="text/javascript"> 
//<![CDATA[ 
for(var $i='a'.charCodeAt(); $i<='z'.charCodeAt(); $i++){ 
document.write(String.fromCharCode($i)+'<br/>') 
} 
//]]> 
</script> 

18.3 n阶乘 
<script type="text/javascript"> 
//<![CDATA[ 
var $fN=10 
for (var $i=1, $j=1; $i<=$fN; $i++, $j*=$i){ 
if($i==$fN){document.write($j);} 
} 
//]]> 
</script> 

18.4 Fibonacci Numbers 
<script type="text/javascript"> 
//<![CDATA[ 
for(var $i=0, $j=1, $k=0, $fbcc=0; $i<50; $i++){ 
document.write($i+'='+$fbcc+'<br/>'); 
$fbcc=$j+$k; 
$j=$k; 
$k=$fbcc; 
} 
//]]> 
</script> 

17. do while 

17.1 简单 do while 
var $count=0 
do{ 
document.write($count) 
} while(++$count<10) 

17.1.2 简单 do while 
var $count=1 
do{ 
document.write($count) 
} while($count++<10) 

16. while 

16. 简单 while 
var $count=0 
while($count<10){ document.write($count);$count++;} 

15 if 判断 

15.1 简单 if 判断 
function ubbTag(fId, str){ 
document.getElementById(fId).content.focus(); 
var strEnd=str.replace(/\[/ig,'[/') 
if (strEnd.indexOf('=')>-1){ strEnd=strEnd.replace(/(.*?)\=.*?\]/,'$1]') } 
if((document.selection)&&(document.selection.type== "Text")){ 
var oStr=document.selection.createRange(); 
oStr.text=str+oStr.text+strEnd 
} else { 
document.getElementById(fId).content.value+=str+strEnd 
} 
} 

15.1.1 简单 if 判断 2 
<script type="text/javascript"> 
//<![CDATA[ 
var i=0, j=1; 
i>j?j+=i:i+=j; 
document.write(i+' '+j); 
//]]> 
</script> 

15.1.2 简单 if 判断 3 
<script type="text/javascript"> 
//<![CDATA[ 
if(!cdti||cdti=='')var cdti='test this'; 
document.write(cdti); 
//]]> 
</script> 

15.2 if 判断的 三个 写法 
<script type="text/javascript"> 
//<![CDATA[ 
var a=b=5, c=6 
if(a==b)document.write('a equal b <br/>'); 
(a==b)&&document.write('a equal b <br/>'); 
a==b?document.write('a equal b <br/>'):''; 
//]]> 
</script> 

15.3 判断执行文件使用网络还是使用本地协议 
<script type="text/javascript"> 
//<![CDATA[ 
if(location.protocol=='file:'){ 
alert('local') 
} else alert('internet'); 
//]]> 
</script> 

15.4 if...else 写法 
<script type="text/javascript"> 
//<![CDATA[ 
//var i=0 
var i=1 
if(i==0)document.write('i=0'); 
else document.write('i!=0'); 
//]]> 
</script> 

14. switch 

14.1 简单 switch 
/* switch(strEnd){ 
case '\[\/html]' :strEnd=strEnd.replace(/\\[\/,'HTML 和 JS 代码支持[');break; 
case '\[\/code]' :strEnd=strEnd.replace(/\\[\/,'代码[');break; 
case '\[\/quote]' :strEnd=strEnd.replace(/\\[\/,'引用[');break; 
case '\[\/cite]' :strEnd=strEnd.replace(/\\[\/,'引用[');break; 
case '\[\/linenum]' :strEnd=strEnd.replace(/\\[\/,'显示行号[');break; 
case '\[\/b]' :strEnd=strEnd.replace(/\\[\/,'粗体[');break; 
case '\[\/i]' :strEnd=strEnd.replace(/\\[\/,'叙体[');break; 
case '\[\/u]' :strEnd=strEnd.replace(/\\[\/,'下划线[');break; 
case '\[\/flash]' :strEnd=strEnd.replace(/\\[\/,'Flash 动画[');break; 
case '\[\/sound]' :strEnd=strEnd.replace(/\\[\/,'背景声音[');break; 
case '\[\/mms]' :strEnd=strEnd.replace(/\\[\/,'WM格式流数据[');break; 
case '\[\/rtsp]' :strEnd=strEnd.replace(/\\[\/,'Real格式流数据[');break; 
case '\[\/ra]' :strEnd=strEnd.replace(/\\[\/,'在线Real Player播放音频文件[');break; 
case '\[\/real]' :strEnd=strEnd.replace(/\\[\/,'Real Player 播放视频文件[');break; 
case '\[\/wm]' :strEnd=strEnd.replace(/\\[\/,'在线Windows Media Player播放视频文件[');break; 
case '\[\/wma]' :strEnd=strEnd.replace(/\\[\/,'在线Windows Media Player播放音频文件[');break; 
case '\[\/iframe]' :strEnd=strEnd.replace(/\\[\/,'插入网页[');break; 
} */ 

13. 时间操作 

13.1 以毫秒为单位的倒计时跳转, 来源 CSDN 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 
<script type="text/javascript"> 
//<![CDATA[ 
var go=20000; 
var timer=null; 
var endTime = new Date().getTime() + go ; 
function interval() 
{ 
var n=(endTime-new Date().getTime())/1000; 
if(n<0) return; 
document.getElementById("jumpTo").innerHTML = n.toFixed(3); 
setTimeout(interval, 10); 
} 
window.οnlοad=function(){ 
timer=setTimeout("window.location.href='/'", go); 
interval(); 
} 
//]]> 
</script> 
<span id="jumpTo">20.000</span> 秒后 将自动</span>跳转到 

12. 随机数 

12.1 生成 GUID 
<!--start 12.1--> 
<html> 
<!-- DW6 --> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 
<title>Untitled Document</title> 
<script> 
function fGuid() 
{ 
var g =""; 
for(var i = 0; i < 32; i++) 
g += Math.floor(Math.random() * 0xF).toString(0xF) + (i == 8 || i == 12 || i == 16 || i == 20 ? "-" : ""); 
alert(g.toUpperCase()); 
} 
</script> 
</head> 
<body onLoad="fGuid();"> 
</body> 
</html> 
<!--end 12.1--> 

12.1.1 生成 GUID 2 
<!--start 12.1.1 --> 
<html> 
<!-- DW6 --> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 
<title>Untitled Document</title> 
<script> 
function fGuid() { 
var g =""; 
for(var i = 0; i < 32; i++) 
g += Math.floor(Math.random() * 0xF).toString(0xF) + (i == 8 || i == 12 || i == 16 || i == 20 ? "-" : ""); 
//alert(g.toUpperCase()); 
return g.toUpperCase(); 
} 
</script> 
</head> 
<body> 
<form name="form1" method="post" action=""> 
<input name="textfield" type="text" onMouseMove="this.value=fGuid();" size="50"> 
</form> 
</body> 
</html> 
<!--end 12.1.1 --> 

11.1 检测字符串中是否出现某字符 
<script> 
function test(str) { 
if(str.indexOf("|")>0) { 
alert("have |") 
} 
} 
</script> 
<input type="text" value="kklskldflksd|ksdkfksjd" onMouseOver="test(this.value)" /> 

11. 字符串 

10.2 鼠标移过选择表单项 
onMouseOver="focus();select();" 

10.1 单击鼠标右击关闭窗口 (我用左手) 
<html οnmοusedοwn='window.close();'> 

10. 接收鼠标事件 

9. 正则表达式 
function rbr() { 
re=/\<br\/\>*/ig 
document.all.textarea.value=document.all.textarea.value.replace(re,"") 
} 

8. 顯示頁面所有元素 
<script language="JavaScript" type="text/javascript"> 
//<![CDATA[ 
for(var i in document) { 
document.write(i +"="+ document[i]+"<br/>") 
} 
//]]> 
</script> 

7. 文本框回车链接 
<script> 
<!-- 
function ckKeyPress(jumpto){ 
if(window.event.keyCode==13) { 
window.location.href="?"+jumpto 
} 
} 
//-->shawl.qiu script 
</script> 
转到:<input type='text' οnmοusemοve='this.focus();this.select();' οnkeypress="ckKeyPress(this.value);" /> 

6. IE 全屏显示 
<script language="JavaScript"> 
<!-- 
self.moveTo(0,0) 
self.resizeTo(screen.availWidth,screen.availHeight) 
//--> 
</script> 

5. 双击拷贝文本 
<script LANGUAGE="JAVASCRIPT"> 
function ClipBoard(tdObj) { //IE Only 
var holdtext = document.all['holdtext']; 
holdtext.innerText = tdObj.innerText; 
Copied = holdtext.createTextRange(); 
Copied.execCommand("Copy"); 
alert("text copied"); 
} 
</script> 
<form NAME="form1" METHOD="post" ACTION=""> 
<textarea id="holdtext" style="display:none" ROWS="10"></textarea> 
</form> 

4. 控制图片大小 
<img src="images/teach/opera/01.jpg" οnlοad="javascript:if(this.width>500)this.width=500;" > 
//如果图片宽度大于 500px, 则 更改宽度为 500px 

3.1 Javascript 结合 Asp 使用数组 
<% '连接数据库 
set rs=server.CreateObject("adodb.recordset") '创建 rs 数据查询 
rs.open "Select a.*, b.* FROM ctglossarysubcat AS a INNER JOIN ctglossarysupercat AS b ON a.gcid = b.gcid order by a.gcid",MM_conn_string,1 
%> 
<script LANGUAGE="JAVASCRIPT"> 
var onecount; //定义子类计数 
onecount=0; //设置子类计数默认值为0 
subcat = new Array(); //定义显示子类数组 
<% count = 0 
do while not rs.eof %> 
subcat[<%=count%>] = new Array("<%=rs("gscat")%>","<%=rs("a.gcid")%>","<%=rs("gscid")%>"); 
<% count = count + 1 
rs.movenext 
loop 
%> 
onecount=<%=count%>; //子类条目总数 
</script> 
<% 
rs.close '关闭 rs 连接 
set rs=nothing 
%> 

3. 数组/Array 

2.2 实时显示更改的图片链接 
<input type="text" name="" value="<%response.write siteicon %>" οnkeyup="javascript:document.all.siteicon.src=(this.value);" /> <img src="<%response.write siteicon %>" alt="<%response.write sitename %>" id="siteicon" /> 

2.1 按任何键关闭窗口 
<body onKeyPress="self.close()"> 

2. 接收键盘事件 

1.6 鼠标经过自动提交表单 
onMouseOut="submit()" 

1.5.1 鼠标经过时选中,并隐藏原框的文字, 移开再显示文字 ——文本框 
<input NAME="findtext" TYPE="text" ID="findtext" value="查找" onMouseOver="this.focus();this.value=''" onMouseOut="this.value='查找';this.select()"> 
<!-- shawl.qiu script --> 


1.5 鼠标经过时选中 ——复选框 Focus() 
<input type="checkbox" onMouseOver="checked='true'" /> 
<!-- shawl.qiu script --> 

1.4 Prompt 
function prompter() 
{ 

urlLink=window.prompt("请输入链接"," http://") 
text = window.prompt("链接名") 

if(text!="") 
document.formT.content.value+=""+text+"" 
} 


1.3 最原始也最实用的 UBB 代码输入方法——SCRIPT & FORM 
<form name="formT" id="formT" method="post" action=""> 
<input type="button" value="url" οnclick="this.form.content.value+=''"/> 
<input type="button" value="code" οnclick="this.form.content.value+=' 
CODE:'" /> 

<input type="button" value="quote" οnclick="this.form.content.value+=' 
QUOTE:

'"/> 
<br /> 
<textarea name="content" cols="60" rows="10"></textarea> 
<br /> 
<input type="submit" name="Submit" value="Submit" /> 
<input type="reset" name="Reset" value="Reset" /> 
</form> 
<!-- shawl.qiu script --> 

1.2 确认按钮 
<script LANGUAGE="JavaScript"> 
<!--//确认框, 注意表单名; 按钮属性, 按钮名字不能为 submit 
function confirmer() 
{ 
if (confirm("现在提交?")) { 
document.formT.submit() 
} 
else { 
document.formT.reset() 
} 
}gggg 
//Script By Shawl.qiu 
//--> 
</script> 
<form name="formT" method="post" action="t1.asp"> 
<input type="text" name="textfield" value="确认后提交"> 
<input type="button" name="confbuton" value="提交" οnclick="confirmer();"> 
</form> 


1.1 前进后退按钮 
<input TYPE="button" VALUE="后退" ONCLICK="history.back(-1)"> 
<input TYPE="button" VALUE="前进" ONCLICK="history.back(+1)"> 

1. 按钮 

0. 语法 

0.1 Switch 
function kP() { 
switch(event.keyCode) { 
case 27: //按 ESC 键关闭窗口. 
window.close() 
break; 
//case 120: //F9 转到主页 
//window.location.href="/" 
//break; 
default: 
break; 
} 
} 

-1. 运算符 

-1.1 -- 与 ++ 
<script type="text/javascript"> 
//<![CDATA[ 
var x; 
x=0; 
document.write('x=0, x++: '+(x++)); // 执行 x 后, x 再加 1 
x=0; 
document.write('<br/>x=0, ++x: '+(++x)); // 执行 x 前, x 先加 1 
x=2; 
document.write('<br/>x=2, x--: '+(x--)); // 执行 x 后, x 再减 1 
x=2; 
document.write('<br/>x=2, --x: '+(--x)); // 执行 x 前, x 先减 1 
//]]> 
</script> 

-1.1.1 
<script type="text/javascript"> 
//<![CDATA[ 
var i=1; 
j=++i; 
document.write(i); //2 
document.write('<br/>'); 
document.write(j); //2 
document.write('<br/>'); 

var k=1 
l=k++ 
document.write(k); //2 
document.write('<br/>'); 
document.write(l); //1 
//]]> 
</script> 

-1.2 类型转换 
<script type="text/javascript"> 
//<![CDATA[ 
document.write('100'+100); //'100100' 字符串与数字相加 
document.write('<br/>'); 
document.write('100'-0); //100 转字符串为数值 
document.write('<br/>'); 
document.write(100+''); //'100' 数值转字符串 
document.write('<br/>'); 
document.write(!!100); //true 转布尔值 
document.write('<br/>'); 
document.write(!100); //false 转布尔值 
document.write('<br/>'); 
//]]> 
</script> 

-1.3 0/0=? 
<script type="text/javascript"> 
//<![CDATA[ 
document.write(0/0); //NaN 
//]]> 
</script> 

-1.4 == 与 === 

-1.4.1 NaN 
<script type="text/javascript"> 
//<![CDATA[ 
document.write(NaN==NaN); //false 
document.write(NaN===NaN); //false 
//]]> 
</script> 

-1.4.2 true 等价 1, false 等价 0. 
<script type="text/javascript"> 
//<![CDATA[ 
document.write(1==true); //true 
document.write('<br/>'); 
document.write(0==false); //true 
document.write('<br/>'); 
//]]> 
</script> 

-1.5 in 操作符 
<script type="text/javascript"> 
//<![CDATA[ 
var o={e:'ok', f:'ok'} 
document.write('e' in o); // true 
document.write('<br/>'); 
document.write('f' in o); // true 
document.write('<br/>'); 
document.write('j' in o); // false 
document.write('<br/>'); 
document.write('toString' in o); // false 
document.write('<br/>'); 
//]]> 
</script> 

-2. var 定义变量 

-2.1 普通定义变量 
<script type="text/javascript"> 
//<![CDATA[ 
var i 
document.write(i+'<br/>'); 
var j=1, k=2 
document.write(j+k+'<br/>'); 
for(var l=0; l<10; l++)document.write(l+' ');; 
//]]> 
</script> 

-2.1.1 普通定义变量 1 
<script type="text/javascript"> 
//<![CDATA[ 
var o={a:'aaa', b:'bbb', c:'ccc'} 
for(var i in o){ 
document.write('object element name: '+i.bold()+' object value: '+o[i].fontcolor('blue')+'<br/>'); 
} 
//]]> 
</script> 

-2.1.2 普通定义变量 2 
<script type="text/javascript"> 
//<![CDATA[ 
var i=j=k=l='ok'; 
document.write(i.bold()+'<br/>'); 
document.write(j.bold()+'<br/>'); 
document.write(k.bold()+'<br/>'); 
document.write(l.bold()+'<br/>'); 
//]]> 
</script> 

-2.2 全局变量与局部变量 
<script type="text/javascript"> 
//<![CDATA[ 
var i='global i';//全局 
function t(){ 
var i='local i'; //局部 
document.write(i+'<br/>'); 
j='global j' //全局 
document.write(j+'<br/>'); 
} 
document.write(i+'<br/>'); 
t(); 
document.write(i+'<br/>'); 
document.write(j+'<br/>'); 

var k='global k' 
document.write(k+'<br/>'); 
function t1(){ 
k='change global k' 
document.write(k+'<br/>'); 
} 
t1(); 
document.write(k+'<br/>'); 
//]]> 
</script> 

-2.3 在函数中使用 var 定义一个变量, 该变量将影响整个函数, 不分先后. 
var scope = "global"; 
function f( ) { 
alert(scope); // Displays "undefined", not "global" 
var scope = "local"; // Variable initialized here, but defined everywhere 
alert(scope); // Displays "local" 
} 
f( ); 

-2.4 同时初始化多个变量并赋相同值 
<script type="text/javascript"> 
//<![CDATA[ 
var i=j=k=l=0; 
document.write(i+' '+j+' '+k+' '+l+' '); 
//]]> 
</script> 

-3. 优先级 

-3.1 函数比其他代码优先执行 
<script type="text/javascript"> 
//<![CDATA[ 
document.write((t(10)+'').bold()+'<br/>'); 
t=10; 
document.write((t+'').bold()+'<br/>'); 
function t(n){ 
return n*n; 
} 
//]]> 
</script> 

---/--------------------------------------------------------- 

常用参数 

3. document 

2. location 

1. this 

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

3.3 写出字符串 
document.write("<input type='button' value='url' οnclick='addcontent('','');'/>"); 

3.2 document.from 
指定 表单域 

3.1 document.all.id 
查找指定 HTML 页面 ID 或 名字 

3. document 

2.2 转到特定网页 
onClick="location.href=' http://127.0.0.1/'" 

2.1 单独 location 
取页面地址 

2. location 

1.4 this.height 
取高度属性 

1.3 this.width 
取宽度属性 

1.2 this.href 
取链接地址 

1.1 this.src 
取图片地址 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值