js总结

javascript事件查询综合
click() 对象.click() 使对象被点击。
closed 对象.closed 对象窗口是否已关闭true/false
clearTimeout(对象) 清除已设置的setTimeout对象
clearInterval(对象) 清除已设置的setInterval对象
confirm("提示信息") 弹出确认框,确定返回true取消返回false
cursor:样式 更改鼠标样式 hand crosshair text wait help default auto e/s/w/n-resize

event.clientX 返回最后一次点击鼠标X坐标值;
event.clientY 返回最后一次点击鼠标Y坐标值;
event.offsetX 返回当前鼠标悬停X坐标值
event.offsetY 返回当前鼠标悬停Y坐标值

document.write(document.lastModified) 网页最后一次更新时间
document.ondblclick=x 当双击鼠标产生事件
document.onmousedown=x 单击鼠标键产生事件

document.body.scrollTop; 返回和设置当前竖向滚动条的坐标值,须与函数配合,
document.body.scrollLeft; 返回和设置当前横向滚动务的坐标值,须与函数配合,
document.title document.title="message"; 当前窗口的标题栏文字
document.bgcolor document.bgcolor="颜色值"; 改变窗口背景颜色
document.Fgcolor document.Fgcolor="颜色值"; 改变正文颜色
document.linkcolor document.linkcolor="颜色值"; 改变超联接颜色
document.alinkcolor document.alinkcolor="颜色值"; 改变正点击联接的颜色
document.VlinkColor document.VlinkColor="颜色值"; 改变已访问联接的颜色
document.forms.length 返回当前页form表单数
document.anchors.length 返回当前页锚的数量
document.links.length 返回当前页联接的数量
document.onmousedown=x 单击鼠标触发事件
document.ondblclick=x 双击鼠标触发事件
defaultStatus window.status=defaultStatus; 将状态栏设置默认显示

function function xx(){...} 定义函数
isNumeric 判断是否是数字
innerHTML xx=对象.innerHTML 输入某对象标签中的html源代码
innerText divid.innerText=xx 将以div定位以id命名的对象值设为XX

location.reload(); 使本页刷新,target可等于一个刷新的网页

Math.random() 随机涵数,只能是0到1之间的数,如果要得到其它数,可以为*10,再取整
Math.floor(number) 将对象number转为整数,舍取所有小数
Math.min(1,2) 返回1,2哪个小
Math.max(1,2) 返回1,2哪个大

navigator.appName 返回当前浏览器名称
navigator.appVersion 返回当前浏览器版本号
navigator.appCodeName 返回当前浏览器代码名字
navigator.userAgent 返回当前浏览器用户代标志

onsubmit onsubmit="return(xx())" 使用函数返回值
opener opener.document.对象 控制原打开窗体对象

prompt xx=window.prompt("提示信息","预定值"); 输入语句
parent parent.框架名.对象 控制框架页面

return return false 返回值
random 随机参数(0至1之间)
reset() form.reset(); 使form表单内的数据重置

split("") string.split("") 将string对象字符以逗号隔开
submit() form对象.submit() 使form对象提交数据

String对象的 charAt(x)对象 反回指定对象的第多少位的字母
lastIndexOf("string") 从右到左询找指定字符,没有返回-1
indexOf("string") 从左到右询找指定字符,没有返回-1
LowerCase() 将对象全部转为小写
UpperCase() 将对象全部转为大写
substring(0,5) string.substring(x,x) 返回对象中从0到5的字符
setTimeout("function",time) 设置一个超时对象
setInterval("function",time) 设置一个超时对象

toLocaleString() x.toLocaleString() 从x时间对象中获取时间,以字符串型式存在
typeof(变量名) 检查变量的类型,值有:String,Boolean,Object,Function,Underfined

window.event.button==1/2/3 鼠标键左键等于1右键等于2两个键一起按为3
window.screen.availWidth 返回当前屏幕宽度(空白空间)
window.screen.availHeight 返回当前屏幕高度(空白空间)
window.screen.width 返回当前屏幕宽度(分辨率值)
window.screen.height 返回当前屏幕高度(分辨率值)
window.document.body.offsetHeight; 返回当前网页高度
window.document.body.offsetWidth; 返回当前网页宽度
window.resizeTo(0,0) 将窗口设置宽高
window.moveTo(0,0) 将窗口移到某位置
window.focus() 使当前窗口获得焦点
window.scroll(x,y) 窗口滚动条坐标,y控制上下移动,须与函数配合
window.open() window.open("地址","名称","属性")
属性:toolbar(工具栏),location(地址栏),directions,status(状态栏),
menubar(菜单栏),scrollbar(滚动条),resizable(改变大小), width(宽),height(高),fullscreen(全 屏),scrollbars(全屏时无滚动条无参 数,channelmode(宽屏),left(打开窗口x坐标),top(打开窗口y坐标)
window.location = 'view-source:' + window.location.href 应用事件查看网页源代码;


a=new Date(); //创建a为一个新的时期对象
y=a.getYear(); //y的值为从对象a中获取年份值 两位数年份
y1=a.getFullYear(); //获取全年份数 四位数年份
m=a.getMonth(); //获取月份值
d=a.getDate(); //获取日期值
d1=a.getDay(); //获取当前星期值
h=a.getHours(); //获取当前小时数
m1=a.getMinutes(); //获取当前分钟数
s=a.getSeconds(); //获取当前秒钟数


对象.style.fontSize="文字大小";
单位:mm/cm/in英寸/pc帕/pt点/px象素/em文字高
1in=1.25cm
1pc=12pt
1pt=1.2px(800*600分辩率下)

文本字体属性:
fontSize大小
family字体
color颜色
fontStyle风格,取值为normal一般,italic斜体,oblique斜体且加粗
fontWeight加粗,取值为100到900不等,900最粗,light,normal,bold
letterSpacing间距,更改文字间距离,取值为,1pt,10px,1cm
textDecoration:文字修饰;取值,none不修饰,underline下划线,overline上划线
background:文字背景颜色,
backgroundImage:背景图片,取值为图片的插入路径


点击网页正文函数调用触发器:

1.onClick 当对象被点击
2.onLoad 当网页打开,只能书写在body中
3.onUnload 当网页关闭或离开时,只能书写在body中
4.onmouseover 当鼠标悬于其上时
5.onmouseout 当鼠标离开对象时
6.onmouseup 当鼠标松开
7.onmousedown 当鼠标按下键
8.onFocus 当对象获取焦点时
9.onSelect 当对象的文本被选中时
10.onChange 当对象的内容被改变
11.onBlur 当对象失去焦点
onsubmit=return(ss())表单调用时返回的值

直线 border-bottom:1x solid black
虚线 border-bottom:1x dotted black
点划线 border-bottom:2x dashed black
双线 border-bottom:5x double black
槽状 border-bottom:1x groove black
脊状 border-bottom:1x ridge black


1.边缘高光glow(color=颜色,strength=亮光大小)<br/>
2.水平翻转fliph() 使对象水平翻转180度<br/>
3.垂直翻转flipv() 使对象垂直翻转180度<br/>
4.对象模糊blur(add=true/false direction=方向 strength=强度)
add指定是否按印象画派进行模糊direction模糊方向strength模糊强度
5.对象透明alpha(opaction=0-100,finishopacity=0-100,style=0/1/2/3)
opaction对象整体不透明值finishopacity当对象利用了渐透明时该项指定结束透明位置的不透明值style指定透明方式0为整体透明,1为线型透明,2为圆型透明,3为矩形透明
6.去除颜色chroma(color=颜色值)使对象中颜色与指定颜色相同区域透明
7.建立阴影dropshadow(color=阴影颜色,offx=水平向左偏离像素,offy=水平向下偏离像素)
8.去色gray()使对象呈灰度显示
9.负片效果invert()使对象呈底片效果
10.高光light()使对象呈黑色显示
11.遮盖mask(color=颜色)使整个对象以指定颜色进行蒙板一次

opacity 表透明度水平.0~100,0表全透明,100表完全不透明
finishopacity表想要设置的渐变透明效果.0~100.
style 表透明区的形状.0表统一形状.1表线形.2表放射形.3表长方形.
startx.starty表渐变透明效果的开始时X和Y坐标.
finishx,finishy渐变透明效果结束时x,y 的坐标.
add有来确定是否在模糊效果中使有原有目标.值为0,1.0表"否",1表"是".
direction设置模糊的方向.0度表垂直向上,45度为一个单位.默认值是向左270度.left,right,down,up.
strength 只能用整数来确定.代表有多少个像素的宽度将受到模糊影响.默认是5个.
color要透明的颜色.
offx,offy分别是x,y 方向阴影的偏移量.
positive指投影方式.0表透明像素生成阴影.1表只给出不透明像素生成阴影..

AddAmbient:加入包围的光源.
AddCone:加入锥形光源.
AddPoint加入点光源
Changcolor:改变光的颜色.
Changstrength:改变光源的强度.
Clear:清除所有的光源.
MoveLight:移动光源.

freq是波纹的频率,在指定在对象上一区需要产生多少个完事的波纹.
lightstrength可对于波纹增强光影的效果.显著0~100正整数,正弦波开始位置是0~360度.0表从0度开始,25表从90度开始.
strength表振幅大小.


hand style="cursor:hand"
crosshair style="cursor:crosshair"
text style="cursor:text"
wait style="cursor:wait"
default style="cursor:default"
help style="cursor:help"
e-resize style="cursor:e-resize"
ne-resize style="cursor:ne-resize"
n-resize style="cursor:n-resize"
nw-resize style="cursor:nw-resize"
w-resize style="cursor:w-resize"
s-resize style="cursor:s-resize"
sw-resize style="cursor:sw-resize "
se-resize style="cursor:se-resize"
auto style="cursor:auto"

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> 数字输入控制,给数字加上千分符 </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<style>
.inputRight {
text-align: right;
border: 1px #666666  dashed; 
font-size: 9pt;
color: #993366;
height: 18px;
ime-mode : disabled;
}
</style>
<SCRIPT LANGUAGE="JavaScript">
/*
这些功能建议通过HTC来实现
*/
////////////
//数字输入控制
function FormatInput(dotlen)
{
var myEle=event.srcElement;
var myValue=String.fromCharCode(event.keyCode);
if (myEle.readOnly)
{
return;
}
switch(dotlen)
{
//原正则表达式(可以输入负数):/^[\-]?\d*\.?\d{0,0}$/
case 0:{event.returnValue = regInput(myEle, /^\d*\.?\d{0,0}$/,  myValue); break;}
case 1:{event.returnValue = regInput(myEle, /^\d*\.?\d{0,1}$/,  myValue); break;}
case 2:{event.returnValue = regInput(myEle, /^\d*\.?\d{0,2}$/,  myValue); break;}
case 3:{event.returnValue = regInput(myEle, /^\d*\.?\d{0,3}$/,  myValue); break;}
case 4:{event.returnValue = regInput(myEle, /^\d*\.?\d{0,4}$/,  myValue); break;}
case 5:{event.returnValue = regInput(myEle, /^\d*\.?\d{0,5}$/,  myValue); break;}
case 6:{event.returnValue = regInput(myEle, /^\d*\.?\d{0,6}$/,  myValue); break;}
case 7:{event.returnValue = regInput(myEle, /^\d*\.?\d{0,7}$/,  myValue); break;}
case 8:{event.returnValue = regInput(myEle, /^\d*\.?\d{0,8}$/,  myValue); break;}
default :{event.returnValue = regInput(myEle, /^\d*\.?\d{0,0}$/,  myValue); break;}
}
}
function regInput(obj, reg, inputStr)
{
var docSel = document.selection.createRange()
if (docSel.parentElement().tagName != "INPUT") return false
oSel = docSel.duplicate()
oSel.text = ""
var srcRange = obj.createTextRange()

oSel.setEndPoint("StartToStart", srcRange)
var str = oSel.text + inputStr + srcRange.text.substr(oSel.text.length)
return reg.test(str)
}
//给数字加上千分符 by yuanzy
function splitNumber(eValue)
{
var intPart = "";
var decPart = "";
if (eValue.indexOf(",")>=0)
{
eValue=eValue.replace(/,/g,"");
}
if (eValue.indexOf(".")>=0)
{
intPart=eValue.split(".")[0];
decPart=eValue.split(".")[1];
}
else
{
intPart = eValue;
}
var num  =  intPart+""; 
    var  re=/(-?\d+)(\d{3})/ 
    while(re.test(num)){ 
num=num.replace(re,"$1,$2") 
    } 
if (eValue.indexOf(".")>=0)
{
eValue=num + "." + decPart;
}
else
{
eValue=num ;
}
return eValue;
}

function oFocus()
{
if (event.srcElement.readOnly) return;
event.srcElement.value=event.srcElement.value.replace(/,/g,"");
}

function oBlur()
{
if (event.srcElement.value=="-")
{
event.srcElement.value="";
}
event.srcElement.value = splitNumber(event.srcElement.value);
}

</SCRIPT>
</HEAD>

<BODY>

<input class="inputRight" type='text'  onfocus="oFocus();" onblur="oBlur();" onKeypress="FormatInput(2);" >
</BODY>
</HTML>


IE功能汇总
<OBJECT id=WebBrowser height=0 width=0
      classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2></OBJECT>
<INPUT onclick=document.all.WebBrowser.ExecWB(1,1) type=button value=打开 name=Button1>
<INPUT onclick=document.all.WebBrowser.ExecWB(4,1) type=button value=另存为 name=Button2>
<INPUT onclick=document.all.WebBrowser.ExecWB(10,1) type=button value=属性 name=Button3>
<INPUT onclick=document.all.WebBrowser.ExecWB(6,1) type=button value=打印 name=Button>
<INPUT onclick=document.all.WebBrowser.ExecWB(8,1) type=button value=页面设置 name=Button4>
<INPUT onclick=window.location.reload() type=button value=刷新 name=refresh>
<INPUT onclick="window.external.ImportExportFavorites(true,'');" type=button value=导入收藏夹 name=Button5>
<INPUT onclick="window.external.ImportExportFavorites(false,'');" type=button value=导出收藏夹 name=Button32>
<INPUT onclick="window.external.AddFavorite(location.href, document.title)" type=button value=加入收藏夹 name=Button22>
<INPUT onclick="window.external.ShowBrowserUI('OrganizeFavorites', null)" type=button value=整理收藏夹 name=Submit2>
<INPUT onclick='window.location="view-source:" + window.location.href' type=button value=查看源文件 name=Button7>
<INPUT onclick="window.external.ShowBrowserUI('LanguageDialog', null)" type=button value=语言设置 name=Button6>
<INPUT onclick="document.execCommand('Cut')" type=button value=剪切>
<INPUT onclick="document.execCommand('Copy')" type=button value=拷贝>
<INPUT onclick="document.execCommand('Paste')" type=button value=粘贴>
<INPUT onclick="document.execCommand('Undo')" type=button value=撤消>
<INPUT onclick="document.execCommand('Delete')" type=button value=删除>
<INPUT onclick="document.execCommand('Bold')" type=button value=黑体>
<INPUT onclick="document.execCommand('Italic')" type=button value=斜体>
<INPUT onclick="document.execCommand('Underline')" type=button value=下划线>
<INPUT onclick="document.execCommand('stop')" type=button value=停止>
<INPUT onclick="document.execCommand('SaveAs')" type=button value=保存>
<INPUT onclick="document.execCommand('Saveas',false,'c:\\test.htm')" type=button value=另存为>
<INPUT onclick="document.execCommand('FontName',false,fn)" type=button value=字体>
<INPUT onclick="document.execCommand('FontSize',false,fs)" type=button value=字体大小>
<INPUT onclick="document.execCommand('refresh',false,0)" type=button value=刷新>
<INPUT onclick=window.location.reload() type=button value=刷新>
<INPUT onclick=history.go(1) type=button value=前进>
<INPUT onclick=history.go(-1) type=button value=后退>
<INPUT onclick=history.forward() type=button value=前进>
<INPUT onclick=history.back() type=button value=后退>
<INPUT onclick='window.external.ImportExportFavorites(true,"http://localhost");'/ type=button value=导入收藏夹>
<INPUT onclick='window.external.ImportExportFavorites(false,"http://localhost");'/ type=button value=导出收藏夹>
<INPUT onclick="window.external.ShowBrowserUI('OrganizeFavorites', null)" type=button value=整理收藏夹>
<INPUT onclick="window.location = 'view-source:'+ window.location.href" type=button value=查看源文件>
<INPUT onclick="window.external.ShowBrowserUI('LanguageDialog', null)" type=button value=语言设置>
<INPUT onclick="window.external.AddFavorite('http://www.cnblogs.com/hbzxf/', 阿好空间)" type=button value=加入收藏夹>
<INPUT onclick="window.external.addChannel('http://www.cnblogs.com/hbzxf/')" type=button value=加入到频道>
<INPUT onclick="this.style.behavior='url(#default#homepage)';this.setHomePage('http://www.cnblogs.com/hbzxf/')" type=button value=设成主页>

窗口打开自动最大化代码
<!-- 窗口打开后最大化 -->
<OBJECT id="max" type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11"><PARAM name="Command" value="Maximize"></OBJECT>
<script>
if(window.screenLeft!=0)
max.Click();
</script>
<!-- 窗口打开后最大化结束 -->

利用脚本封装,方便实现网站悬浮广告

下面是JS脚本(floatdiv.js)
/*======================================================================
  浮动块支持脚本
  DESIGN BY :  彭国辉
  DATE:        2004-02-26
  SITE:        http://kacarton.yeah.net/
  BLOG:        http://blog.csdn.net/nhconch
  EMAIL:       [email protected]

  文章为作者原创,转载前请先与本人联系,转载请注明文章出处、保留作者信息,谢谢支持!
======================================================================*/

var alLeft = 0, alCenter = 1, alRight  = 2;   //水平对齐方式
var alTop  = 0, alMiddle = 1, alBottom = 2;   //垂直对齐方式

var f = new Array();
var cnt = 0;

function floatDiv(objId, align, vAlign, x, y, smooth)
{
    /*浮动块对象
      数据结构:
        objId: 对象ID
        align: 水平对齐方式,枚举型
        vAlign:垂直对齐方式,枚举型内容
        x, y:  xy座标,整型
        smooth:平滑移动,布尔型
    */
    this.objId  = objId;
    this.align  = align;
    this.vAlign = vAlign;
    this.x = x;
    this.y = y;
    this.smooth = smooth;
}

function addDiv(objId, align, vAlign, x, y, smooth)
{   //添加浮动块
    f[cnt++] = new floatDiv(objId, align, vAlign, x, y, smooth);
}

function floatMove()
{   //重新定位各块位置
    var objX, objY;
    if (document.all)
    {
        var d = document.body;
//status = "scrollLeft:"+f[0].objId.style.pixelTop+"| offsetWidth:"+d.offsetWidth;
        for (var i=0; i<f.length; i++)
        {
            switch (f[i].align)
            {
                case alLeft  : objX = d.scrollLeft + f[i].x; break;
                case alCenter: objX = d.scrollLeft + Math.ceil((d.offsetWidth - f[i].objId.offsetWidth)/2) + f[i].x; break;
                case alRight : objX = d.scrollLeft + d.offsetWidth - f[i].x - f[i].objId.offsetWidth - 20; break; //减滚动条20
            }
            switch (f[i].vAlign)
            {
                case alTop   : objY = d.scrollTop + f[i].y; break;
                case alMiddle: objY = d.scrollTop + Math.ceil((d.offsetHeight - f[i].objId.offsetHeight)/2) + f[i].y; break;
                case alBottom: objY = d.scrollTop + d.offsetHeight - f[i].y - f[i].objId.offsetHeight; break;
            }
            if (f[i].smooth) smoothMove(f[i].objId, objX, objY);
            else
            {
                f[i].objId.style.pixelLeft = objX;
                f[i].objId.style.pixelTop  = objY;
            }
        }
    }
   
    if (document.layers)
    {
        for (var i=0; i<f.length; i++)
        {
            var objId = f[i].objId;
            switch (f[i].align)
            {
                case alLeft  : objX = pageXOffset + f[i].x; break;
                case alCenter: objX = pageXOffset + Math.ceil((window.innerWidth-objId.width)/2) + f[i].x; break;
                case alRight : objX = pageXOffset + window.innerWidth - f[i].x - document.objId.width; break;
            }
            switch (f[i].vAlign)
            {
                case alTop   : objY = pageYOffset + f[i].y; break;
                case alMiddle: objY = pageYOffset + Math.ceil(window.innerHeight/2) + f[i].y; break;
                case alBottom: objY = pageYOffset + window.innerHeight - f[i].y - document.objId.height; break;
            }
            if (t[i].smooth) smoothMove(f[i].objId, objX, objY);
            else
            {
                document.objId.left = objX;
                document.objId.top  = objY;
            }
        }
    }
   
    setTimeout("floatMove();",50);
}

function smoothMove(obj, x, y)
{
    var percent;
    if (document.all)
    {
        percent = .1 * (x - obj.style.pixelLeft);
        if (percent > 0) percent = Math.ceil(percent); else percent = Math.floor(percent);
        obj.style.pixelLeft += percent;
       
        percent = .1 * (y - obj.style.pixelTop);
        if (percent > 0) percent = Math.ceil(percent); else percent = Math.floor(percent);
        obj.style.pixelTop += percent;
    }
    if (document.layers)
    {
        percent = .1 * (x - document.objId.left);
        if (percent > 0) percent = Math.ceil(percent); else percent = Math.floor(percent);
        document.objId.left += percent;
       
        percent = .1 * (y - document.objId.top);
        if (percent > 0) percent = Math.ceil(percent); else percent = Math.floor(percent);
        document.objId.top += percent;
    }
}


setTimeout("floatMove();",50);


调用例子:

<script language="javascript" src="lib/floatdiv.js"></script>
<script language="javascript">
if (navigator.appName == "Netscape")
{
    document.write("<layer id=ad_hr top=300 width=100 height=120><a href=http://www.fpc.org.cn/hr/040522.htm target=_blank><img src='ad/hr40522.gif' width=120 height=180 border=0></a></layer>");
}
else
{
    document.write("<div id=ad_hr style='position: absolute;width:120;top:300;left:5;visibility: visible;z-index: 1'><a href=http://www.fpc.org.cn/hr/040522.htm target=_blank><img src='ad/hr40522.gif' width=120 height=180 border=0></a></div>");
}
addDiv(ad_hr, alRight, alTop, 0, 30, true);
</script>


[原创]自己定义的简单方法验证表单数据
方法很简单,先是定义好要验证的数组比如:
check_array[0]= new Array(title,留言主题不能为空!);
然后判断,错误的就提示定义的内容,代码如下:

<script language="javascript">
//表单验证程序;
 
  //定义获取表单元素;
  function $()
  {
    var elements = new Array();
 
    for (var i = 0; i < arguments.length; i++) {
   var element = arguments[i];
   if (typeof element == 'string')
     element = document.getElementById(element);
 
   if (arguments.length == 1)
     return element;
 
   elements.push(element);
    }
 
    return elements;
  }


function checkform()
{
  //定义要验证的表单数组;
  var check_array=new Array();
  check_array[0]= new Array("title","留言主题不能为空!");
  check_array[1]= new Array("name","姓名不能为空!");
  check_array[2]= new Array("email","电子邮件不能为空!");
  check_array[3]= new Array("phone","电话不能为空!");
  check_array[4]= new Array("note","留言内容不能为空!");
  
  //验证定义表单是否为空;
  for(var i=0;i<check_array.length;i++)
  {
   if($(check_array[i][0]).value=="")
   {
    alert(check_array[i][1]);
    $(check_array[i][0]).focus();
    return false;
   }
  }
 
}
</script>

几个表单验证的
function checkMail(obj,error)
{
    if (obj == null)
return "NULL";
    if (obj.value == "")
return "EMPTY";
    var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
    if (filter.test(obj.value))
return true;
    else
alert(error);
return false;
}

function verifyDottedIP(cntrl,errmsg1,errmsg2,flag)
{
    ip_str = cntrl.value;


if (ip_str == "") {
if (flag == 1){

alert(errmsg1);
cntrl.select();
    return false;
}
           return true;
}else{
varval = 0;
vari = index = 0;

while (index < ip_str.lastIndexOf(".")){
k = index;
index = ip_str.indexOf(".", index);
val = toNumber(ip_str, k, index);

if (val < 0 || val > 255)
break;
i++; index++;
}

if (i == 3){
if (index == ip_str.length){
i = 2;
} else {
val = toNumber(ip_str,index, ip_str.length);
if (val < 0 || val > 255) i = 2;
}
}

if (i != 3) {
alert(errmsg2);
cntrl.select();
return false;
}
}
return true;
}


function verifyport(cntrl,errmsg1,errmsg2,flag)
    {
    varval = 0;

    port_str = cntrl.value;
if (port_str == "") {
if (flag == 1){

alert(errmsg1);
cntrl.select();
    return false;
}}
    val = toNumber(port_str, 0, port_str.length);

    if (val < 0 || val > 65535)
    {

       

alert(errmsg2);
cntrl.select();
    return false;
    }
    else
    {
    return true;
    }
    }


function checkname(field,err_blank,err_space,err_invalid)
{
if (field.value.indexOf(" ") >=0)
   {
alert(err_space);
field.focus();
field.select();
return false;
}

left_trim(field);
right_trim(field);




if (field.value =="" | field.value == null)
{

alert(err_blank);
field.focus();
field.select();
return false;
}


if (checkOtherChar(field.value, err_invalid)==false)
{
field.focus();
field.select();
return false;
}
if (isChinese(field.value)==true)
{
field.focus();
field.select();
return false;
}

return true;
}

function isChinese(inputStr){
      iLength = inputStr.length
      for (i = 0; i < iLength; i++)
        if (inputStr.charCodeAt(i) > 255){
            alert("Input error!");
            return true ;
           }
     return false ;
}


function left_trim(field)
{
var tmp_string = field.value;
while (''+tmp_string.charAt(0) == ' ')
tmp_string = tmp_string.substring(1,tmp_string.length);

field.value = tmp_string;

}

function right_trim(field)
{
var tmp_string = field.value;

while (''+tmp_string.charAt(tmp_string.length-1) == ' ')
tmp_string = tmp_string.substring(0,tmp_string.length-1);

field.value = tmp_string;
}

function  checkOtherChar(str,errmsg) {
       for(var loop_index=0; loop_index<str.length; loop_index++)
       {
         if(str.charAt(loop_index) == '~'
           ||str.charAt(loop_index) == '!'
           ||str.charAt(loop_index) == '@'
           ||str.charAt(loop_index) == '#'
           ||str.charAt(loop_index) == '$'
           ||str.charAt(loop_index) == '%'
           ||str.charAt(loop_index) == '^'
           ||str.charAt(loop_index) == '&'
           ||str.charAt(loop_index) == '*'
           ||str.charAt(loop_index) == '('
           ||str.charAt(loop_index) == ')'
           ||str.charAt(loop_index) == '+'
           ||str.charAt(loop_index) == '{'
           ||str.charAt(loop_index) == '}'
           ||str.charAt(loop_index) == '|'
           ||str.charAt(loop_index) == ':'
           ||str.charAt(loop_index) == '"'
           ||str.charAt(loop_index) == '<'
           ||str.charAt(loop_index) == '>'
           ||str.charAt(loop_index) == '?'
           ||str.charAt(loop_index) == '`'
           ||str.charAt(loop_index) == '='
           ||str.charAt(loop_index) == '['
           ||str.charAt(loop_index) == ']'
           ||str.charAt(loop_index) == '\\'
           ||str.charAt(loop_index) == ';'
           ||str.charAt(loop_index) == '\''
           ||str.charAt(loop_index) == ','
           ||str.charAt(loop_index) == '.'
           ||str.charAt(loop_index) == '/')
          {
           
            alert(errmsg);
            return false;
      }
         }
      return true;
   }

function check_pwd_eq(element1,element2,errmsg)
{
if (element1.value == element2.value)
{
return true;
}
else
{
alert(errmsg);
element1.select();
return false;
}
}

function check_pwd(field,errmsg1)
{

  if (field.value == "") {
      alert(errmsg1);
      field.focus();
      return false;
}
 
  


  return true;
}

function verifynum(cntrl,errmsg3,flag,errmsg1,errmsg2,from,to)
    {
    varval = 0;
    num_str = cntrl.value;
   if (num_str.indexOf(" ") >=0)
   {
alert(errmsg3);
cntrl.focus();
cntrl.select();
return false;
}

if (flag == 1) {
if (num_str == "") {
alert(errmsg1);
    return false;
}}
    val = toNumber(num_str, 0, num_str.length);



    if ((val < from || val > to) && (num_str != ""))
    {
alert(errmsg2);
    return false;
    }
    else
    {
    return true;
    }
    }

判断浏览器类型
<SCRIPT language=JavaScript>
if(navigator.appVersion.indexOf("MSIE 6.") != -1 ){
window.location = "111.htm" ;
}

</SCRIPT>

按钮背景图片替换
<input type=button style="background-image:url(a.gif)" value=test onmouseover="this.style.backgroundImage='url(b.gif)'" onmouseout='this.style.backgroundImage='url(a.gif)'' ID="Button1" NAME="Button1"/>

document.getElementById(id) 的最简化调用
/*--------------------------------------------------------------------------*/

/**
* 这个函数就 Ruby 了。我觉得它的作用主要有两个
* 1.  大概是 document.getElementById(id) 的最简化调用。
* 比如:$(aaa) 将返回 aaa 对象
* 2.  得到对象数组
* 比如: $(aaa,bbb) 返回一个包括id为aaa和bbb两个
input控件对象的数组。
*/
function $() {
  var elements = new Array();

  for (var i = 0; i < arguments.length; i++) {
    var element = arguments[i];
    if (typeof element == 'string')
      element = document.getElementById(element);

    if (arguments.length == 1)
      return element;

    elements.push(element);
  }

  return elements;
}


<script language="Javascript">
//屏蔽鼠标右键、Ctrl+N、Shift+F10、F5刷新、退格键
//屏蔽F1帮助
function window.onhelp()
{
return false
}
function KeyDown()
{
//alert(event.keyCode);
//屏蔽 Alt+ 方向键 ← 屏蔽 Alt+ 方向键 →
if ((window.event.altKey)&&((window.event.keyCode==37)||(window.event.keyCode==39)))
{
//alert("不准你使用ALT+方向键前进或后退网页!");
event.returnValue=false;
}
//屏蔽退格删除键,屏蔽 F5 刷新键,Ctrl + R
if ((event.keyCode==116)||(event.ctrlKey && event.keyCode==82))
{
event.keyCode=0;
event.returnValue=false;
}

//屏蔽 Ctrl+n
if ((event.ctrlKey)&&(event.keyCode==78))
{
event.returnValue=false;
}

//屏蔽 shift+F10
if ((event.shiftKey)&&(event.keyCode==121))
{
event.returnValue=false;
}

//屏蔽 shift 加鼠标左键新开一网页
if (window.event.srcElement.tagName == "A" && window.event.shiftKey)
{
window.event.returnValue = false;
}

//屏蔽Alt+F4
if ((window.event.altKey)&&(window.event.keyCode==115))
{
window.showModelessDialog("about:blank","","dialogWidth:1px;dialogheight:1px");
return false;
}

//屏蔽Ctrl+A
if((event.ctrlKey)&&(event.keyCode==65))
{
return false;
}
return false;
}
document.onkeydown=KeyDown;
</script>

根据身份证号码取得生日与性别,并判断18位身份证的正确与错误:
function showBirthday(val){
var birthdayValue;
if(15==val.length){//15位身份证号码
birthdayValue = val.charAt(6)+val.charAt(7);
if(parseInt(birthdayValue)<10){
birthdayValue = '20'+birthdayValue;
}else{
birthdayValue = '19'+birthdayValue;
}
birthdayValue=birthdayValue+'-'+val.charAt(8)+val.charAt(9)+'-'+val.charAt(10)+val.charAt(11);
if(parseInt(val.charAt(14)/2)*2!=val.charAt(14))
document.all.sex.value='男';
else
document.all.sex.value='女';
document.all.birthday.value=birthdayValue;
}
if(18==val.length){//18位身份证号码
birthdayValue=val.charAt(6)+val.charAt(7)+val.charAt(8)+val.charAt(9)+'-'+val.charAt(10)+val.charAt(11)+'-'+val.charAt(12)+val.charAt(13);
if(parseInt(val.charAt(16)/2)*2!=val.charAt(16))
document.all.sex.value='男';
else
document.all.sex.value='女';
if(val.charAt(17)!=IDCard(val)){
document.all.idCard.style.backgroundColor='#ffc8c8';
}else{
document.all.idCard.style.backgroundColor='white';
}
document.all.birthday.value=birthdayValue;
}
}

// 18位身份证号最后一位校验
function IDCard(Num)
{
if (Num.length!=18)
return false;
var x=0;
var y='';

for(i=18;i>=2;i--)
x = x + (square(2,(i-1))%11)*parseInt(Num.charAt(19-i-1));
x%=11;
y=12-x;
if (x==0) y='1';
if (x==1) y='0';
if (x==2) y='X';
return y;
}
// 求得x的y次方
function square(x,y)
{
var i=1;
for (j=1;j<=y;j++)
i*=x;
return i;
}


身份证<input type="text" name="idCard">
性别<input type="text" name="sex">
生日<input type="text" name="birthday">

获取页面中控件的ID:(查错时可能有用)

function clk()
{
document.all('TextBox1').value=event.srcElement.id;
}

document.onclick=clk;


 B.27 string对象
  它不是另一个对象的属性,而是一个内置对象,即一串字符字符串输入脚本中时必须位于引号内。
  属性
  length 字符串中的字符个数
  方法
  anchor() 用来把字符串转换到HTML锚点标记内(<A NAME=>)
  big() 把字符串中的文本变成大字体(<BIG>)
  blink() 把字符串中的文本变成闪烁字体(<BLINK>)
  bold() 把字符串中的文本变成黑字体(<B>)
  charAt() 寻找字符串中指定位置的一个字符
  fixed() 把字符串中的文本变成固定间距字体(<TT>)
  fontcolor() 改变字符串中文本的颜色(<FONT COLOR=>)
  fontsize() 把字符串中的文本变成指定大小(<FONTSIZE=>)
  indexOf() 用来搜索字符串中的某个特殊字符,并返回该字符的索引位置
  italics() 把字符串中的文本变成斜字体(<I>)
  lastlndexOf() 与indexof相似,但是向后搜索最后一个出现的字符
  link() 用来把字符串转换到HTML链接标记中(<A HREF=>)
  small() 把字符串中的文本变成小字体(<SMALL>)
  strike() 把字符串中的文本变成划掉字体(<STRIKE>)
  sub() 把字符串中的文本变成下标(subscript)字体((SUB>)
  substring() 返回字符串里指定位置间的一部分字符串
  sup() 把字符串中的文本变成上标(superscript)字体(<SUP>)
  toLowerCase() 把字符串中的文本变成小写
  toUpperCase() 把字符串中的文本变成大写

  B.28 submit对象
  它是form对象的一个属性,窗体中的一个提交按钮(<INPUT TYPE=”SUBMIT”>)。
  属性
  name 对象的名字(NAME=特性)
  value VALUE=特性
  方法
  click 模拟鼠标单击按钮
  事件处理程序
  Onclick 点击

  B.29 text对象
  它是form对象的一个属性,宙体中的一个文本域(<INPUT TYPE=”TEXT”>)。
  属性
  defaultValue text对象的缺省值(VALUE=特性)
  name 该对象的名字(NAME=特性)
  Value 该域具有的当前值,最初与VALUE=特性(defaultValue)相同但是,如果脚本修改了该域中的值,则该值将改变
  方法
  blur 把焦点从文本框移开
  focus 把焦点移到文本框
  select 选择输入区域
  事件处理程序
  Onblur 失去焦点事件
  Onchange 更改
  Onfocus 聚焦事件
  Onselect 选取事件

  B.30 textarea对象
  它是form对象的一个属性,宙体中的一个文本区域(<TEXTAREA>)。
  属性
  defaultValue textarea对象的缺省值(VALUE=特性)
  name 该对象的名字(NAME=特性)
  value 该域具有的当前值,最初与VALUE=特性(defaultValue)相同,但是,如果脚本修改了该域中的值,则该值将改变了。
  方法
  blur 把焦点从文本区移开
  focus 把焦点移到文本区
  select 选择输入区域事件处理程序
  事件处理程序
  Onblur 失去焦点事件
  Onchange 更改
  Onfocus 聚焦事件
  Onselect 选取事件

  B.31 window对象
  它是一个顶层对象,而不是另一个对象的属性即浏览器的窗口。
  属性
  defaultStatus 缺省的状态条消息
  document 当前显示的文档(该属性本身也是一个对象)
  frame 窗口里的一个框架((FRAME>)(该属性本身也是一个对象)
  frames array 列举窗口的框架对象的数组,按照这些对象在文档中出现的顺序列出(该属性本身也是一个对象)
  history 窗口的历史列表(该属性本身也是一个对象)
  length 窗口内的框架数
  location 窗口所显示文档的完整(绝对)URL(该属性本身也是一个对象)不要把它与如document.location混淆,后者是当前显示文档的URL。用户可以改变window.location(用另一个文档取代当前文档),但却不能改变document.location(因为这是当前显示文档的位置)
  name 窗口打开时,赋予该窗口的名字
  opener 代表使用window.open打开当前窗口的脚本所在的窗口(这是Netscape Navigator 3.0beta 3所引入的一个新属性)
  parent 包含当前框架的窗口的同义词。frame和window对象的一个属性
  self 当前窗口或框架的同义词
  status 状态条中的消息
  top 包含当前框架的最顶层浏览器窗口的同义词
  window 当前窗口或框架的同义词,与self相同
  方法
  alert() 打开一个Alert消息框
  clearTimeout() 用来终止setTimeout方法的工作
  close() 关闭窗口
  confirm() 打开一个Confirm消息框,用户可以选择OK或Cancel,如果用户单击OK,该方法返回true,单击Cancel返回false
  blur() 把焦点从指定窗口移开(这是Netscape Navigator 3.0 beta 3引入的新方法)
  focus() 把指定的窗口带到前台(另一个新方法)
  open() 打开一个新窗口
  prompt() 打开一个Prompt对话框,用户可向该框键入文本,并把键入的文本返回到脚本
  setTimeout() 等待一段指定的毫秒数时间,然后运行指令事件处理程序
  事件处理程序
  Onload() 页面载入时触发
  Onunload() 页面关闭时触发


  B.16 images数组
  它是document对象的一个属性,文档中所有图像的列表。
  属性
  length 文档内的图像个数

  B.17 link
  它是document对象的一个属性,文档内的一个<A HREF=>标记。
  属性
  hash 以散列号(#)开始的一个字符串,用于指定URL内的一个锚点
  host 包括冒号和端口号的URL的主机名部分
  hostname 与host属性相同,除了不包括冒号和端口号外
  href 完整的URL
  pathname URL的目录路径部分
  port URL的:端口部分
  protocol URL类型(http:、ftp:、gopher:等等)
  search 以一个问号开始的URL中的一部分,用于指定搜索信息
  target 当用户单击一链接(TARGET特性)时,用于显示被引用文档内容的窗口
  事件处理程序
  Onclick 点击
  Onmouseover 鼠标移到对象上

  B.18 links数组
  它是document对象的一个属性,文档内所有链接的一个列表。
  属性
  length 文档内的链接数

  B.19 location对象
  它为document对象的一个属性,该文档的完整URL,请不要把它与window.location属性相混淆,后者可用来加载一个新文档,并且window.location属性本身并不是一个对象,同时,window.location可以用脚本修改,而document.location则不能。
  属性
  hash 以散列号(#)开始的一个字符串,用于指定URL内的一个锚点
  host 包括冒号和端口号的URL的主机名部分
  hostname 与host属性相同,除了不包括冒号和端口号之外
  href 完整的URL
  pathname URL的目录路径部分
  port URL的:端口部分
  protocol URL的类型(http:、ftp:、gopher:等等)
  search 以问号(?)开始的URL中的一部分,用于指定搜索信息
  target 用户单击链接(TARGET特性)时,用于显示被引用文档的内容的窗口

  B.20 math对象
  该对象不是其它对象的一个属性,而是一个内置对象,包含了许多数学常量和函数。
  属性
  E 欧拉常量,自然对数的底(约等于2.718)
  LN2 2的自然对数(约等于0.693)
  LN10 10的自然对数(约等于2.302)
  LOG2E 以2为底的e的对数(约等于1.442)
  LOG10E 以10为底的e的对数(约等于o.434)
  PI ∏的值(约等于3.14159)
  SQRT1_2 0.5的平方根(即l除以2的平方根,约等于o.707)
  SQRT2 2的平方根(约等于1.414)
  方法
  abs() 返回某数的绝对值(即该数与o的距离,例如,2与一2的绝对值都是2)
  acos() 返回某数的反余弦值(以弧度为单位)
  asin() 返回某数的反正弦值(以弧度为单位)
  atan() 返回某数的反正切值(以弧度为单位)
  ceil() 返回与某数相等,或大于该数的最小整数(ceil(-22.22)返回-22;ceil22,22)返回23;ceil(22)返回22)
  cos() 返回某数(以弧度为单位)的余弦值
  exp() 返回en
  floor() 与ceil相反(floor(一22.22)返回一23;floor(22.22)返回22; floor(22)返回22)
  10g() 返回某数的自然对数(以e为底)
  max() 返回两数间的较大值
  min() 返回两数问的较小值
  pow() 返回m的n次方(其中,m为底,n为指数)
  random() 返回0和1之间的一个伪随机数(该方法仅在Netscape
  Navigator的UNIX版本中有效)
  round() 返回某数四舍五入之后的整数
  sin() 返回某数(以弧度为单位)的正弦值
  sqrt() 返回某数的平方根
  tan() 返回某数的正切值

  B.2l navigator对象
  该对象不是其它对象的属性,而是一个内置对象它包含了有关加载文档的浏览器的信息。
  属性
  appCodeName 浏览器的代码名(例如,Mozilla)
  appName 浏览器的名字
  appVersion 浏览器的版本号
  userAgent 由客户机送到服务器的用户与代理头标文本
  方法
  javaEnabled JavaScript中当前并没有该方法,但是不久之后将会添加上它将查看浏览器是否为兼容JavaScript的浏览器,如果是,继续查看JavaScript是否处于支持状态。

  B.22 options数组
  该数组是select对象的一个属性,即选择框中的所有选项(<OPTION>)的一个列表。
  属性
  defaultSelected 选项列表中的缺省选项
  index 选项列表中某选项的索引位置
  length 选项列表中的选项数(<OPTIONS>)
  name 选项列表的名字(NAME特性)
  selected 表示选项列表中某选项<OPTION>是否被选中的一个布尔类型值
  selectedIndex 选项列表中已选中的<OPTION>的索引(位置)
  text 选项列表中<OPTION>标记后的文本
  value 选项列表中的VALUE=特性

  B.23 Password 对象
  它是document对象的一个属性,一个<INPUT TYPE=”PASSWORD”>标记。
  属性
  defaultValue password对象的缺省值(VAlUE=特性)
  name 对象的名字(NAME=特性)
  value 该域具有的当前值最初与VALUE=特性(defauttValue)相同,但是,如果脚本修改了该域中的值,则该值将改变
  方法
  focus 把焦点从该域移开
  blur 把焦点移到该域
  select 选择输入区域

  B.24 radio对象
  它是form对象的一个属性,窗体内的一组单选按钮(选项按钮)(<INPUT TYPE=”RADIO”>)。
  属性
  checked 复选框或选项按钮(单选按钮)的状态
  defaultChecked 复选框或选项按钮(单选按钮)的缺省状态
  length 一组单选按钮中的按钮数
  name 对象的名字(NAME=特性)
  value VALUE=特性
  方法
  click 模拟鼠标单击按钮
  事件处理程序
  onclick 点击

  B.25 reset 对象
  它是form对象的一个属性,复位按钮(<INPUT TYPE=”RESET”>)。
  属性
  name 对象的名字(NAME=特性)
  value VALUE=特性
  方法
  click 模拟鼠标单击按钮
  事件处理程序
  onclick 点击

  B.26 select对象
  它是form对象的一个属性,选择框(<SELECT>)。
  属性
  length 选项列表中的选项数(<OPTIONS>)
  name 选项列表的名字(NAME特性)
  options 列表中的选项数
  selectedlndex 选项列表中已选中的<OPTION>的索引(位置)
  text 选项列表中(OPTION)标记之后的文本
  value 选项列表中的VALUE=特性
  方法
  blur 把焦点从选项列表中移走
  focus 把焦点移到选项列表中
  事件处理程序
  Onblur 失去焦点时事件
  onchange 更改
  Onfocus 聚焦事件
本文列举了各种JavaScript对象与数组,同时包括对上述每一对象或数组所完成工作的简短描述,以及与其相关的属性方法,以及事件处理程序,还注明了该对象或数组的父对象用户同样可能需要参考Online Companion中的超级文本Object Hierarchy页面(http://www.netscapepress.com/support/javascript/10-9.htm),以便了解这些对象之间是如何相互关联的。
  顺便提一下,记住,这里把所有作为另一对象的子对象的对象看作该对象的属性请参见第十章中与此相关的注解。

  B.1 anchor对象
  使用<A NAME=>标记创建的HTML描点能被一个链接作为目标如果锚点包括HREF=特性,则它也是一个链接对象。
  anchor对象是document对象的一个属性,它本身没有属性方法或者事件处理程序。

  B.2 anchors数组
  anchors数组是document对象的一个属性,是文档内所有anchor对象的一个列表如果anchor也是一个link(链接),则它会同时出现在anchors和links数组中。
  属性
  length 文档内的锚点个数

  B.3 array对象
  array对象是Netscape Navlgator 3.0 beta 3中引入的一个新的对象,因而,它不能在Netscape 2.0中使用它是一个内置对象,而不是其它对象的属性。
  属性
 length 数组中的值个数

  B.4 button对象
  它是form对象的一个属性,使用<INPUT TYPE="BUTTON">标记来创建。
  属性
  name HTML标记中的NAME=特性
  value HTML标记中的VALUE=特性
  方法
  click 模拟鼠标单击一按钮
  事件处理程序
  Onclick

  B.5 checkbox 对象
  它是form对象的一个属性,使用<INPUT TYPE="CHECKBOX">标记来创建。
  属性
  checked 复选框的选择状态
  defaultChecked 标记的CHECKED=特性
  name 标记的NAME=特性
  value 标记的VALUE=特性
  方法
  click 模拟鼠标单击按钮
  事件处理程序
  onclick

  B.6 Date对象
  它是一个内置对象——而不是其它对象的属性,允许用户执行各种使用日期和时间的过程。
   方法
  getDate() 查看Date对象并返回日期
  getDay() 返回星期几
  getHours() 返回小时数
  getMinutes() 返回分钟数
  getMonth() 返回月份值
  getSeconds() 返回秒数
  getTime() 返回完整的时间
  getTimezoneoffset() 返回时区偏差值(格林威治平均时间与运行脚本的计算机所处时区设置之间相差的小时数)
  getYear() 返回年份
  parse() 返回在Date字符串中自从1970年1月1日00:00:00以来的毫秒数(Date对象按照毫秒数的形式存储从那时起的日期和时间)但是注意,该方法当前不能正确运行
  setDate() 改变Date对象的日期
  setHours() 改变小时数
  setMinutes() 改变分钟数
  setMonth() 改变月份
  setSeconds() 改变秒数
  setTime() 改变完整的时间
  setYear() 改变年份
  toGMTString() 把Date对象的日期(一个数值)转变成一个GMT时间字符串,返回类似下面的值:Weds,15 June l997 14:02:02 GMT(精确的格式依赖于计算机上所运行的操作系统而变)
  toLocaleString() 把Date对象的日期(一个数值)转变成一个字符串,使用所在计算机上配置使用的特定日期格式
  UTC() 使用Date UTC(年、月、日、时、分、秒),以自从1970年1月1日00:00:00(其中时、分、秒是可选的)以来的毫秒数的形式返回日期

  B.7 document对象
  该对象是window和frames对象的一个属性,是显示于窗口或框架内的一个文档。
  属性
  alinkColor 活动链接的颜色(ALINK)
  anchor 一个HTMI锚点,使用<A NAME=>标记创建(该属性本身也是一个对象)
  anchors array 列出文档锚点对象的数组(<A NAME=>)(该属性本身也是一个对象)
  bgColor 文档的背景颜色(BGCOLOR)
  cookie 存储于cookie.txt文件内的一段信息,它是该文档对象的一个属性
  fgColor 文档的文本颜色(<BODY>标记里的TEXT特性)
  form 文档中的一个窗体(<FORM>)(该属性本身也是一个对象)
  forms anay 按照其出现在文档中的顺序列出窗体对象的一个数组(该属性本身也是一个对象)
  lastModified 文档最后的修改日期
  linkColor 文档的链接的颜色,即<BODY>标记中的LINK特性(链接到用户没有观察到的文档)
  link 文档中的一个<A HREF=>标记(该属性本身也是一个对象)
  links array 文档中link对象的一个数组,按照它们出现在文档中的顺序排列(该属性本身也是一个对象)
  location 当前显示文档的URL。用户不能改变document.location(因为这是当前显示文档的位置)。但是,可以改变window.location (用其它文档取代当前文档)window.location本身也是一个对象,而document.location不是对象
  referrer 包含链接的文档的URL,用户单击该链接可到达当前文档
  title 文档的标题((TITLE>)
  vlinkColor 指向用户已观察过的文档的链接文本颜色,即<BODY>标记的VLINK特性
  方法
  clear 清除指定文档的内容
  close 关闭文档流
  open 打开文档流
  write 把文本写入文档
  writeln 把文本写入文档,并以换行符结尾

  B.8 elements数组
  它是form对象的一个属性,列举了窗体内各元素的一个数组。
  属性
  1ength 窗体内的元素个数
  B.9 form对象
  它是document对象的一个属性,文档内的一个窗体。
  属性
  action 包含了为一个窗体提交的目标URL的字符串
  button 窗体内的一个按钮,使用<INPUT TYPE=”BUTTON”>标记来创建(该属性本身也是一个对象)
  checkbox 复选框,使用<INPUT TYPE=”CHECKBOX”>标记来创建 (该属性本身也是一个对象)
  elements array 一个数组,按照其出现于窗体内的顺序列举各窗体元素(该属性本身也是一个对象)
  encoding 窗体的MIME编码
   hidden 窗体里的一个隐藏元素(<INPUT TYPE=”HIDDEN”>)。窗体对象的一个属性(该属性本身也是一个对象)
  length 窗体里的元素的个数
  method 输入窗体的数据传送到服务器上的方式,即(FORM)标记中的METHOD特性
  radio 设置在窗体里的单选按钮(<INPUT TYPE=”RADIO”>)(该属性本身也是一个对象)
  reset 窗体里的复位按钮((1NPUT TYPE=”RESET”>)(该属性自身也是一个对象)
  select 窗体里的选择框(<SELECT>)(该属性本身也是一个对象)
  submit 窗体里的提交按钮(<INPUT TYPE=”SUBMIT”>)(该属性本身也是一个对象)
  target 提交窗体后,显示回应信息的窗口的名字
  text 窗体里的文本元素(<INPUT TYPE=”TEXT”>)(该属性本身也是一个对象)
  textarta 窗体里的文本区元素(<TEXTAREA>)(该属性本身也是一个对象)
  方法
  submit 提交窗体(与使用Submit按钮的作用相同)事件处理程序
  onsubmit

  B.10 forms数组
  该数组是document对象的一个属性,即列举了文档内的各窗体的一个数组。
  属性
  length 文档内窗体的个数

  B.11 frame对象
  它是window对象的一个属性,窗口内的一个框架。除了个别例外,frame对象与window对象的作用相同。
  属性
  frames array 列举该框架内的各个子框架的一个数组(该属性本身也是—个对象)
  length 该框架内的框架数
  name 框架的名字(<FRAME>标记里的NAME特性)
  parent 包含本框架的父窗口的同义词
  self 当前框架的同义词
  window 当前框架的同义词
  方法
  clearTimeout() 用来终止setTimeout方法的工作
  setTimeout() 等待指定的毫秒数,然后运行指令

  B.12 frames数组
  它既是window对象,也是frame对象的属性,列举了window或者frame对象内的各框架。
  属性
  length 窗口或框架对象内的框架数

  B.13 hidden对象
  糊为form对象的一个属性,窗体内的一个隐藏元素(<INPUT TYPE=”HIDDEN”>)。
  属性
  name 标记内的名字(NAME特性)
  value 标记内的VALUE=特性

  B.14 history对象
  它为window对象的一个属性,该窗口的历史列表。
  属性
  length 历史列表中的项目数
  方法
  back 加载历史列表中的上一个文档
  forward 加载历史列表中的下一个文档
  go 加载历史列表中的一个指定文档,通过文档在列表中的位置来指定

  B.15 image对象
  它是document对象的一个属性,是使用(1MG)标记内嵌入文档里的一幅图像这是Netscape Navigator 3.0 beta 3引入的新对象。
  属性
  border <IMG>标记的BORDER特性
  complete 表示浏览器是否完整地加载了图像的一个布尔值
  height HEIGHT特性
  hspace HSPACE特性
  lowsrc LOWSRC特性
  src SRC特性
  vsPace VSPACE特性
  width WIDTH特性
  事件处理程序
  Onload 图象载入
  Onerror 载入错误
  Onabort 取消

javascript事件列表解说

事件 浏览器支持 解说
一般事件

onclick IE3、N2  鼠标点击时触发此事件
ondblclick IE4、N4  鼠标双击时触发此事件
onmousedown IE4、N4  按下鼠标时触发此事件
onmouseup IE4、N4  鼠标按下后松开鼠标时触发此事件
onmouseover IE3、N2  当鼠标移动到某对象范围的上方时触发此事件
onmousemove IE4、N4  鼠标移动时触发此事件
onmouseout IE4、N3 当鼠标离开某对象范围时触发此事件
onkeypress IE4、N4  当键盘上的某个键被按下并且释放时触发此事件.
onkeydown IE4、N4  当键盘上某个按键被按下时触发此事件
onkeyup IE4、N4  当键盘上某个按键被按放开时触发此事件

页面相关事件
onabort IE4、N3  图片在下载时被用户中断
onbeforeunload IE4、N  当前页面的内容将要被改变时触发此事件
onerror IE4、N3  出现错误时触发此事件
onload IE3、N2  页面内容完成时触发此事件
onmove IE、N4  浏览器的窗口被移动时触发此事件
onresize IE4、N4  当浏览器的窗口大小被改变时触发此事件
onscroll IE4、N  浏览器的滚动条位置发生变化时触发此事件
onstop IE5、N  浏览器的停止按钮被按下时触发此事件或者正在下载的文件被中断
onunload IE3、N2  当前页面将被改变时触发此事件

表单相关事件
onblur IE3、N2  当前元素失去焦点时触发此事件
onchange IE3、N2  当前元素失去焦点并且元素的内容发生改变而触发此事件
onfocus IE3 、N2 当某个元素获得焦点时触发此事件
onreset IE4 、N3  当表单中RESET的属性被激发时触发此事件
onsubmit IE3 、N2  一个表单被递交时触发此事件

滚动字幕事件

onbounce IE4、N 在Marquee内的内容移动至Marquee显示范围之外时触发此事件
onfinish IE4、N 当Marquee元素完成需要显示的内容后触发此事件
onstart IE4、 N 当Marquee元素开始显示内容时触发此事件

编辑事件

onbeforecopy IE5、N 当页面当前的被选择内容将要复制到浏览者系统的剪贴板前触发此事件
onbeforecut IE5、 N 当页面中的一部分或者全部的内容将被移离当前页面[剪贴]并移动到浏览者的系统
剪贴板时触发此事件

onbeforeeditfocus IE5、N 当前元素将要进入编辑状态
onbeforepaste IE5、 N 内容将要从浏览者的系统剪贴板传送[粘贴]到页面中时触发此事件
onbeforeupdate IE5、 N 当浏览者粘贴系统剪贴板中的内容时通知目标对象
oncontextmenu IE5、N 当浏览者按下鼠标右键出现菜单时或者通过键盘的按键触发页面菜单时触发的事件
oncopy IE5、N 当页面当前的被选择内容被复制后触发此事件
oncut IE5、N  当页面当前的被选择内容被剪切时触发此事件
ondrag IE5、N  当某个对象被拖动时触发此事件 [活动事件]
ondragdrop IE、N4 一个外部对象被鼠标拖进当前窗口或者帧
ondragend IE5、N 当鼠标拖动结束时触发此事件,即鼠标的按钮被释放了
ondragenter IE5、N 当对象被鼠标拖动的对象进入其容器范围内时触发此事件
ondragleave IE5、N  当对象被鼠标拖动的对象离开其容器范围内时触发此事件
ondragover IE5、N 当某被拖动的对象在另一对象容器范围内拖动时触发此事件
ondragstart IE4、N 当某对象将被拖动时触发此事件
ondrop IE5、N 在一个拖动过程中,释放鼠标键时触发此事件
onlosecapture IE5、N 当元素失去鼠标移动所形成的选择焦点时触发此事件
onpaste IE5、N 当内容被粘贴时触发此事件
onselect  IE4、N 当文本内容被选择时的事件
onselectstart IE4、N 当文本内容选择将开始发生时触发的事件

数据绑定
onafterupdate IE4、N 当数据完成由数据源到对象的传送时触发此事件
oncellchange IE5、N 当数据来源发生变化时
ondataavailable IE4、N 当数据接收完成时触发事件
ondatasetchanged IE4、N 数据在数据源发生变化时触发的事件
ondatasetcomplete IE4、N 当来子数据源的全部有效数据读取完毕时触发此事件
onerrorupdate IE4、N 当使用onBeforeUpdate事件触发取消了数据传送时,代替onAfterUpdate事件
onrowenter IE5、N 当前数据源的数据发生变化并且有新的有效数据时触发的事件
onrowexit IE5、N 当前数据源的数据将要发生变化时触发的事件
onrowsdelete IE5、N 当前数据记录将被删除时触发此事件
onrowsinserted IE5、N 当前数据源将要插入新数据记录时触发此事件

外部事件
onafterprint IE5、N 当文档被打印后触发此事件
onbeforeprint IE5、N 当文档即将打印时触发此事件
onfilterchange IE4、N 当某个对象的滤镜效果发生变化时触发的事件
onhelp IE4、N 当浏览者按下F1或者浏览器的帮助选择时触发此事件
onpropertychange IE5、N 当对象的属性之一发生变化时触发此事件
onreadystatechange IE4、N 当对象的初始化属性值发生变化时触发此事件

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": 文件不被检索,但可查询页上的链接。

网页常用小技巧
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=*.html></iframe></noscript>

11. <input type=button value=查看网页源代码
onclick="window.location = "view-source:"+ "http://www.51js.com/"">


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" 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="logo.jpg" border=0></a>

24.电子邮件处理提交表单
<form name="form1" method="post" action="mailto:****@***.com" enctype="text/plain">
<input type=submit>
</form>

25.在打开的子窗口刷新父窗口的代码里如何写?
wi

<script type="text/javascript"></script><script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script>

你可能感兴趣的:(js)