JavaScript参考教程


前言  JavaScript  参考教程  本教程为未接触过  JavaScript  的读者提供了比较完善的初级知识, 但只限  于初级知识:所有与动态网页密切相关的  JavaScript  在本教程中都未提及,包  括动态定位、动画、让文档接收更多事件(document.captureEvent())等;所有  在  IE  及  Netscape  中有不同的  JavaScript  都尽少提及。  本教程在结构上设计的比较像一个参考(reference),有参考的规划性,但  又有教程的性质,所以我把它叫做“参考教程”。  本教程不面向连  HTML  都没有学好的读者。本教程中会多次提到有关  HTML  的内容,并不会对这些  HTML  的知识做讲解。  未接触过  JavaScript  的读者看完此教程应该对  JavaScript  有比较深的  掌握。 接触过  JavaScript  的读者可以当此教程为参考来用。  本教程对  JavaScript  的基础有比较详细的讲述,对如对象、事件之类比较  深入的知识则讲述得比较浅易,型如参考。如果读者有一定的理解能力和消化能  力,相信在掌握了基础部分后,在学习进阶的章节时不会遇到什么困难。本教程  所用的参考式结构,使教程看起来很统一——在讲述语句的时候,对语句以外的  任何知识只字不提;在讲述对象的时候,又对对象以外的任何知识只字不提。如  果你想快速学会  JavaScript,你可能要掌握“跳章学习”的方法。  左边可以看到本教程整个结构树。可以看到共分  5  章,前两章是基础知识,  第三第四章是进阶知识——对象, 第五章是针对两个对象——框架和  Cookie  进  行详细的讲解,作为第三第四章中内容的补充。 理解能力不好或者依赖性强的读者可能学到  JavaScript  的核心——对象  化编程时会觉得力不从心,因为它们不习惯这种参考式的文章;急于求成的读者  可能对本教程非常统一的参考式结构觉得厌恶, 因为他们必须学到第三第四章才  可以做一个小小的  JavaScript。  本教程缺乏例子。读者要有很强的“悟性”和很愿意自己去实践,才可以很  好的掌握  JavaScript。  本教程的作者 Micro.只此一人, 伟大吗?除了我, 还有两本  JavaScript  的  书,一本是  JS 1.1  教程,但是本教程编了不久书被别人借去了;另一本是很浅  的参考,如果照搬,大家都不会明白说了什么。还有两个浏览器,用来实践;还  有英文版的  JavaScript  参考、 教程, 来自  MSDN  和  Netscape  网。 还有一个脑,  两只手,一台电脑…… JavaScript  有什么特点  JavaScript  使网页增加互动性。JavaScript  使有规律地重复的 HTML 文段  简化,减少下载时间。JavaScript  能及时响应用户的操作,对提交表单做即时  的检查,无需浪费时间交由  CGI  验证。JavaScript  的特点是无穷无尽的,只要  你有创意。  Java  与  JavaScript  有什么不同  很多人看到  Java  和  JavaScript  都有“Java”四个字, 就以为它们是同一  样东西,连我自己当初也是这样。其实它们是完完全全不同的两种东西。Java,  全称应该是  Java Applet, 是嵌在网页中, 而又有自己独立的运行窗口的小程序。  Java Applet  是预先编译好的,一个  Applet  文件(.class)用  Notepad  打开  阅读,根本不能理解。Java Applet  的功能很强大,可以访问  http、ftp 等协 议,甚至可以在电脑上种病毒(已有先例了)。相比之下,JavaScript  的能力  就比较小了。JavaScript  是一种“脚本”(“Script”),它直接把代码写到  HTML  文档中,浏览器读取它们的时候才进行编译、执行,所以能查看  HTML  源  文件就能查看 JavaScript  源代码。JavaScript  没有独立的运行窗口,浏览器  当前窗口就是它的运行窗口。它们的相同点,我想只有同是以  Java  作编程语言  一点了。  开发  JavaScript  该用什么软件  一个  JavaScript  程序其实是一个文档,一个文本文件。它是嵌入到  HTML  文档中的。所以,任何可以编写  HTML  文档的软件都可以用来开发  JavaScript。  在此我推荐大家用  FrontPage 2000  附带的  Microsoft  脚本编辑器(在  FrontPage  菜单  |  工具  |  宏  | Microsoft  脚本编辑器)。它是个像  Visual Basic / C++  一样的程序开发器,能对正在输入的语句作出简要提示。配合  FrontPage 2000,使工作量大大减少。  JavaScript 语言的基础  在什么地方插入  JavaScript JavaScript  可以出现在  HTML  的任意地方。使用标记  ,你可以在  HTML  文档的任意地方插入  JavaScript,甚至  在之前插入也不成问题。不过如果要在声明框架的网页(框架网页)中插  入,就一定要在之前插入,否则不会运行。  基本格式   第二行和第四行的作用,是让不懂”的标记把它嵌入到文档中。注意,一定要用  “”标记。  参考    例如:  JavaScript 中的 Screen 屏幕对象  这是基本 JavaScript 的屏幕对象 • screen  屏幕对象  反映了当前用户的屏幕设置。 • width  返回屏幕的宽度(像素数)。 • height  返回屏幕的高度。 • availWidth  返回屏幕的可用宽度(除去了一些不自动隐藏的类似任务栏  的东西所占用的宽度)。 • availHeight  返回屏幕的可用高度。 • colorDepth  返回当前颜色设置所用的位数  - 1:黑白;8:256 色;16:  增强色;24/32:真彩色  下面是英文的 Navigator 浏览器的屏幕对象: • availHeight:minus permanent or semipermanent user interface features displayed by the operating system:such as the Taskbar on Windows. • availWidth:Specifies the width of the screen, in pixels, minus permanent or semipermanent user interface:features displayed by the operating system, such as the Taskbar on Windows. • colorDepth:The bit depth of the color palette, if one is in use; otherwise, the value is derived from screen.pixelDepth. • height:Display screen height. • pixelDepth:Display screen color resolution (bits per pixel). • width:Display screen width. JavaScript 中的 Window 窗口对象  JavaScript 中的 Window 窗口对象  他是 JavaScript 中最大的对象,它描述的是一个浏览器窗口。一般要引用它的  属性和方法时,不需要用“window.xxx”这种形式,而直接使用“xxx”。一个  框架页面也是一个窗口。 Window 窗口对象有如下属性: • name  窗口的名称, 由打开它的连接 () 或框架页 ()或某一个窗口调用的  open()  方法(见下)决定。一般我  们不会用这个属性。 • status  指窗口下方的“状态栏”所显示的内容。通过对  status  赋值,  可以改变状态栏的显示。 • opener  用法:window.opener;返回打开本窗口的窗口对象。注意:返回  的是一个窗口对象。如果窗口不是由其他窗口打开的,在  Netscape  中这  个属性返回  null; 在  IE  中返回“未定义” (undefined)。 undefined  在  一定程度上等于  null。注意:undefined  不是  JavaScript  常数,如果  你企图使用“undefined”,那就真的返回“未定义”了。 • self  指窗口本身,它返回的对象跟  window  对象是一模一样的。最常用  的是“self.close()”,放在标记中:“关闭窗口”。 • parent  返回窗口所属的框架页对象。 • top  返回占据整个浏览器窗口的最顶端的框架页对象。 • history  历史对象,见下。 • location  地址对象,见下。 • document  文档对象,见下。 Window 窗口对象有如下方法:  第一个方法是 open()  打开一个窗口。  用法:  open(, <窗口名称字符串>, <参数字符串>);  说明: • :描述所打开的窗口打开哪一个网页。如果留空(''),则  不打开任意网页。 • <窗口名称字符串>:描述被打开的窗口的名称(window.name),可以使  用'_top'、'_blank'等内建名称。这里的名称跟“”里的“target”属性是一样的。 • <参数字符串>: 描述被打开的窗口的样貌。 如果只需要打开一个普通窗口,  该字符串留空(''),如果要指定样貌,就在字符串里写上一到多个参数,  参数之间用逗号隔开。  例:打开一个  400 x 100  的干净的窗口:  open('','_blank','width=400,height=100,menubar=no,toolbar=no, location=no,directories=no,status=no, scrollbars=yes,resizable=yes') open()的参数 • top=#  窗口顶部离开屏幕顶部的像素数 • left=#  窗口左端离开屏幕左端的像素数 • width=#  窗口的宽度 • height=#  窗口的高度 • menubar=...  窗口有没有菜单,取值 yes 或 no • toolbar=...  窗口有没有工具条,取值 yes 或 no • location=...  窗口有没有地址栏,取值 yes 或 no • directories=...  窗口有没有连接区,取值 yes 或 no • scrollbars=...  窗口有没有滚动条,取值 yes 或 no • status=...  窗口有没有状态栏,取值 yes 或 no • resizable=...  窗口给不给调整大小,取值 yes 或 no  注意:open()  方法有返回值,返回的就是它打开的窗口对象。比如  var newWindow = open('','_blank');  这样把一个新窗口赋值到“newWindow”变量中, 以后通过“newWindow”变量就  可以控制窗口了。  close()  关闭一个已打开的窗口。  用法:  window.close()  或 self.close() 主要作用是关闭本窗口;  <窗口对象>.close():关闭指定的窗口。注意如果该窗口有状态栏,调用该方法  后浏览器会警告:“网页正在试图关闭窗口,是否关闭?”然后等待用户选择是  否;如果没有状态栏,调用该方法将直接关闭窗口。  另外 Window 窗口对象还有如下方法 • blur()  使焦点从窗口移走,窗口变为“非活动窗口”。 • focus()  是窗口获得焦点,变为“活动窗口”。不过在  Windows 98,该  方法只能使窗口的标题栏和任务栏上的相应按钮闪烁, 提示用户该窗口正  在试图获得焦点。 • scrollTo()  用法:[<窗口对象>.]scrollTo(x, y);使窗口滚动,使文档  从左上角数起的(x, y)点滚动到窗口的左上角。 • scrollBy()  用法:[<窗口对象>.]scrollBy(deltaX, deltaY);使窗口向  右滚动  deltaX  像素,向下滚动  deltaY  像素。如果取负值,则向相反的  方向滚动。 • resizeTo()  用法:[<窗口对象>.]resizeTo(width, height);使窗口调  整大小到宽  width  像素,高  height  像素。 • resizeBy()  用法:[<窗口对象>.]resizeBy(deltaWidth, deltaHeight);  使窗口调整大小,宽增大  deltaWidth  像素,高增大  deltaHeight  像素。  如果取负值,则减少。 • alert()  用法:alert(<字符串>);弹出一个只包含“确定”按钮的对话  框,显示<字符串>的内容,整个文档的读取、Script  的运行都会暂停,  直到用户按下“确定”。 • confirm()  用法: confirm(<字符串>); 弹出一个包含“确定”和“取消”  按钮的对话框,显示<字符串>的内容,要求用户做出选择,整个文档的读  取、Script  的运行都会暂停。如果用户按下“确定”,则返回  true  值,  如果按下“取消”,则返回  false  值。 • prompt()  用法:prompt(<字符串>[, <初始值>]);弹出一个包含“确  认”“取消”和一个文本框的对话框,显示<字符串>的内容,要求用户在  文本框输入一些数据,整个文档的读取、Script  的运行都会暂停。如果  用户按下“确认”, 则返回文本框里已有的内容, 如果用户按下“取消”,  则返回  null  值。如果指定<初始值>,则文本框里会有默认值。  Window 窗口对象有如下事件:  window.onload;发生在文档全部下载完毕的时候。全部下载完毕意味着不但  HTML  文件,而且包含的图片,插件,控件,小程序等全部内容都下载完毕。本  事件是  window  的事件,但是在  HTML  中指定事件处理程序的时候,我们是把它  写在标记中的。  window.onunload;发生在用户退出文档(或者关闭窗口,或者到另一个页面去)  的时候。与  onload  一样,要写在  HTML  中就写到标记里。 • window.onresize;发生在窗口被调整大小的时候。 • window.onblur;发生在窗口失去焦点的时候。 • window.onfocus;发生在窗口得到焦点的时候。 • window.onerror;发生在错误发生的时候。它的事件处理程序通常就叫做  “错误处理程序”(Error Handler),用来处理错误。上边已经介绍过,  要忽略一切错误,就使用:  function ignoreError() { return true; } window.onerror = ignoreError; JavaScript 中的 History 历史对象  JavaScript 中的 History 历史对象包含了用户已浏览的  URL  的信息,是指历史  对象指浏览器的浏览历史。鉴于安全性的需要,该对象收到很多限制,现在只剩  下下列属性和方法。History 历史对象有 length 这个属性,列出历史的项数。  JavaScript  所能管到的历史被限制在用浏览器的“前进”“后退”键可以去到  的范围。本属性返回的是“前进”和“后退”两个按键之下包含的地址数的和。  History 历史对象并有以下方法 • back()  后退,跟按下“后退”键是等效的。 • forward()  前进,跟按下“前进”键是等效的。 • go()  用法:history.go(x);在历史的范围内去到指定的一个地址。如果  x < 0,则后退  x  个地址,如果  x > 0,则前进  x  个地址,如果  x == 0,  则刷新现在打开的网页。history.go(0)  跟  location.reload()  是等效  的。  JavaScript 中的 Location 地址对象  location  地址对象  它描述的是某一个窗口对象所打开的地址。 要表示当前窗口  的地址,只需要使用“location”就行了;若要表示某一个窗口的地址,就使用  “<窗口对象>.location”。 先前写了一片用 window.location.href 实现刷新另  个框架页面  ,特此我看了一下 locaiton 的详细用法,对此有点改进,具体如  下:  注意:属于不同协议或不同主机的两个地址之间不能互相引用对方的  location  对象,这是出于安全性的需要。例如,当前窗口打开的是“www.a.com”下面的  某一页,另外一个窗口(对象名为:bWindow)打开的是“www.b.com”的网页。  如果在当前窗口使用“bWindow.location”,就会出错:“没有权限”。这个错  误是不能用错误处理程序(Event Handler,参阅  onerror  事件)来接收处理的。  第一、简单介绍一下 location 属性、用法以及相关示例:  Location  包含了关于当前  URL  的信息。location 对象描述了与一个给定的  Window  对象 关联的完整  URL。location  对象的每个属性都描述了  URL  的不同特性。  通常情况下, 一个  URL  会有下面的格式: 协议//主机:端口/路径名称#哈希标识?  搜索条件  例如: http://www.ijavascript.cn/jiaocheng/index.html#topic1?x=7&y=2  这  些部分是满足下列需求的: • “协议”是  URL  的起始部分,直到包含到第一个冒号。 • “主机”描述了主机和域名,或者一个网络主机的  IP  地址。 • “端口”描述了服务器用于通讯的通讯端口。 • 路径名称描述了  URL  的路径方面的信息。 • “哈希标识”描述了  URL  中的锚名称,包括哈希掩码(#)。此属性只应用  于  HTTP  的  URL。 • “搜索条件”描述了该  URL  中的任何查询信息,包括问号。此属性只应  用于  HTTP  的  URL。“搜索条件”字符串包含变量和值的配对;每对之间  由一个“&”连接。  属性概览 • protocol  返回地址的协议,取值为  'http:','https:','file:'  等等。 • hostname  返回地址的主机名,例如,一个“ http://www.microsoft.com/china/”的地址,location.hostname == 'www.microsoft.com'。 • port  返回地址的端口号,一般  http  的端口号是  '80'。 • host  返回主机名和端口号,如:'www.a.com:8080'。 • pathname  返回路径名,如“http://www.a.com/b/c.html”,  location.pathname == 'b/c.html'。 • hash  返回“#”以及以后的内容,如“ http://www.a.com/b/c.html#chapter4”,location.hash == '#chapter4';如果地址里没有“#”,则返回空字符串。 • search  返回“?”以及以后的内容,如“ http://www.a.com/b/c.asp?selection=3&jumpto=4”, location.search == '?selection=3&jumpto=4';如果地址里没有“?”,则返回空字符串。 • href  返回以上全部内容,也就是说,返回整个地址。在浏览器的地址栏  上怎么显示它就怎么返回。如果想一个窗口对象打开某地址,可以使用  “location.href = '...'”,也可以直接用“location = '...'”来达  到此目的。  方法概览 • reload()  相当于按浏览器上的“刷新”(IE)或“Reload”(Netscape)  键。 • replace()  打开一个  URL,并取代历史对象中当前位置的地址。用这个方  法打开一个  URL  后, 按下浏览器的“后退”键将不能返回到刚才的页面。  二、location 之页面跳转 js 如下:  //简单跳转  function gotoPage(url) { // eg. var url = "newsview.html?catalogid="+catalogID+"&pageid="+pageid; window.location = url; } //  对 location 用法的升级,为单个页面传递参数  function goto_catalog(iCat) { if(iCat<=0) { top.location = "../index.aspx"; // top 出去  } else { window.location = "../newsCat.aspx?catid="+iCat; } } //  对指定框架进行跳转页面,二种方法皆可用  function goto_iframe(url) { parent.mainFrame.location = "../index.aspx"; // // parent.document.getElementById("mainFrame").src = "../index.aspx";// use dom to change page //  同时我增加了 dom 的写法  } //  对指定框架进行跳转页面,因为  parent.iframename.location="../index.aspx";  方法不能实行,主要是  "parent.iframename"  中的 iframename 在 js 中被默认为节点, 而不能把传递过  来的参数转换过来,所以用 dom 实现了该传递二个参数的框架跳转页面,希望那  位仁兄不吝赐教!  function goto_iframe(iframename,url) { parent.document.getElementById(iframename).src = "../index.aspx";// use dom to change page by iframeName //} //  回到首页  function gohome() { top.location = "/index.aspx"; } JavaScript 中的 Document 文档对象  Document 文档对象是 JavaScript 中 window 和 frames 对象的一个属性,是显示  于窗口或框架内的一个文档。描述当前窗口或指定窗口对象的文档。它包含了文  档从到的内容。  用法:document  (当前窗口)  或  <窗口对象>.document  (指定窗口)  属性: • document.title //设置文档标题等价于 HTML 的标签 • document.bgColor //设置页面背景色 • document.fgColor //设置前景色(文本颜色) • document.linkColor //未点击过的链接颜色 • document.alinkColor //激活链接(焦点在此链接上)的颜色 • document.vlinkColor //已点击过的链接颜色 • document.URL //设置 URL 属性从而在同一窗口打开另一网页 • document.fileCreatedDate //文件建立日期,只读属性 • document.fileModifiedDate //文件修改日期,只读属性 • document.fileSize //文件大小,只读属性 • document.cookie //设置和读出 cookie • document.charset //设置字符集  简体中文:gb2312 • cookie  关于  cookie  请参看“使用框架和  Cookies”一章。 • lastModified  当前文档的最后修改日期,是一个  Date  对象。 • referrer  如果当前文档是通过点击连接打开的,则  referrer  返回原来  的  URL。 • title  指<head>标记里用<title>...定义的文字。在  Netscape  里本属性不接受赋值。 • fgColor  指标记的  text  属性所表示的文本颜色。 • bgColor  指标记的  bgcolor  属性所表示的背景颜色。 • linkColor  指标记的  link  属性所表示的连接颜色。 • alinkColor  指标记的  alink  属性所表示的活动连接颜色。 • vlinkColor  指标记的  vlink  属性所表示的已访问连接颜色。  方法: • open()  打开文档以便  JavaScript  能向文档的当前位置(指插入  JavaScript  的位置)写入数据。通常不需要用这个方法,在需要的时候  JavaScript  自动调用。 • write(); writeln()  向文档写入数据,所写入的会当成标准文档  HTML  来处理。writeln()  与  write()  的不同点在于,writeln()  在写入数据  以后会加一个换行。这个换行只是在  HTML  中换行,具体情况能不能够是  显示出来的文字换行,要看插入  JavaScript  的位置而定。如在
标   记中插入,这个换行也会体现在文档中。   • clear()  清空当前文档。   • close()  关闭文档,停止写入数据。如果用了  write[ln]()  或  clear()   方法,就一定要用  close()  方法来保证所做的更改能够显示出来。如果   文档还没有完全读取,也就是说,JavaScript  是插在文档中的,那就不   必使用该方法。   现在我们已经拥有足够的知识来做以下这个很多网站都有的弹出式更新通知了。     当然也可以先写好一个  HTML  文件,在  open()  方法中直接  load  这个文件。   JavaScript 中的其他对象   anchors[]; links[]; Link  连接对象   用法:document.anchors[[x]]; document.links[[x]]; ;    document.anchors  是一个数组,包含了文档中所有锚标记(包含  name  属   性的标记), 按照在文档中的次序, 从  0  开始给每个锚标记定义了一个下标。   document.links  也是一个数组, 包含了文档中所有连接标记 (包含  href  属   性的标记和标记段里的标记),按照在文档中的次序,从  0  开   始给每个连接标记定义了一个下标。   如果一个标记既有  name  属性,又有  href  属性,则它既是一个  Anchor  对象,又是一个  Link  对象。   在  IE  中,如果在标记中添加“id="..."”属性,则这个对象被赋予   一个标识(ID),调用这个对象的时候只需要使用“”就行了。很多文档部   件都可以用这个方法来赋予  ID,但要注意不能有两个  ID  相同。   anchors  和  links  作为数组,有数组的属性和方法。单个  Anchor  对象没有属   性;单个  Link  对象的属性见下。   属性   protocol; hostname; port; host; pathname; hash; search; href  与  location   对象相同。   target  返回/指定连接的目标窗口(字符串),与标记里的  target  属性是   一样的。   事件   onclick; onmouseover; onmouseout; onmousedown; onmouseup   applets[] Java 小程序对象  它是一个数组,包含了文档中所有的  Applet  对象   (Java  小程序)。作为一个数组,有数组的属性和方法。关于单个  Applet  对   象的属性和方法,我引用一句话:“Applet  对象继承了  Java  小程序的所有公   共属性和方法。”(英文原句:The Applet object inherits all public   properties of the Java applet./The Applet object inherits all public   methodss of the Java applet.)  因为本人很厌恶  Java  小程序,所以对它的什   么“公共”“私有”的问题不感兴趣,也就没有探讨了。   embeds[]  插件对象  它是一个数组,包含了文档中所有的插件(标记)。   因为每个插件的不同,每个  Embed  对象也有不同的属性和方法。  forms[]; Form  表单对象  document.forms[]  是一个数组,包含了文档中所有的   表单(
)。要引用单个表单,可以用  document.forms[x],但是一般来说,  人们都会这样做:在标记中加上“name="..."”属性,那么直接用  “document.<表单名>”就可以引用了。  Form  对象的属性  name  返回表单的名称,也就是属性。  action  返回/设定表单的提交地址,也就是属性。  method  返回/设定表单的提交方法,也就是属性。  target  返回/设定表单提交后返回的窗口,也就是属性。  encoding  返回/设定表单提交内容的编码方式,也就是  属性。  length  返回该表单所含元素的数目。  方法  reset()  重置表单。这与按下“重置”按钮是一样的。  submit()  提交表单。这与按下“提交”按钮是一样的。  事件  onreset; onsubmit  以下从“Button”到“Textarea”都是表单的元素对象。  Button  按钮对象  由“”指定。引用一个  Button  对象,  可以使用“<文档对象>.<表单对象>.<按钮名称>”。<按钮名称>指在标  记中的“name="..."”属性的值。引用任意表单元素都可以用这种方法。 属性  name  返回/设定用指定的元素名称。  value  返回/设定用指定的元素的值。  form  返回包含本元素的表单对象。  方法  blur()  从对象中移走焦点。  focus()  让对象获得焦点。  click()  模拟鼠标点击该对象。  事件  onclick; onmousedown; onmouseup Checkbox  复选框对象  由“”指定。  属性  name  返回/设定用指定的元素名称。  value  返回/设定用指定的元素的值。  form  返回包含本元素的表单对象。  checked  返回/设定该复选框对象是否被选中。这是一个布尔值。  defaultChecked  返回/设定该复选框对象默认是否被选中。这是一个布尔值。  方法  blur()  从对象中移走焦点。  focus()  让对象获得焦点。  click()  模拟鼠标点击该对象。 事件  onclick elements[]; Element  表单元素对象  <表单对象>.elements  是一个数组,包含  了该表单所有的对象。一般我们不用该数组,而直接引用各个具体的对象。  Hidden  隐藏对象  由“”指定。  属性  name  返回/设定用指定的元素名称。  value  返回/设定用指定的元素的值。  form  返回包含本元素的表单对象。  Password  密码输入区对象  由“”指定。  属性  name  返回/设定用指定的元素名称。  value  返回/设定密码输入区当前的值。  defaultValue  返回用指定的默认值。  form  返回包含本元素的表单对象。  方法  blur()  从对象中移走焦点。  focus()  让对象获得焦点。  select()  选中密码输入区里全部文本。  事件  onchange Radio  单选域对象  由“”指定。一组  Radio  对象有共同  的名称(name  属性),这样的话,document.formName.radioName  就成了一个  数组。要访问单个  Radio  对象就要用:document.formName.radioName[x]。  单个  Radio  对象的属性  name  返回/设定用指定的元素名称。  value  返回/设定用指定的元素的值。  form  返回包含本元素的表单对象。  checked  返回/设定该单选域对象是否被选中。这是一个布尔值。  defaultChecked  返回/设定该对象默认是否被选中。这是一个布尔值。  方法  blur()  从对象中移走焦点。  focus()  让对象获得焦点。  click()  模拟鼠标点击该对象。  事件  onclick Reset  重置按钮对象  由“”指定。因为  Reset  也是按  钮,所以也有  Button  对象的属性和方法。至于“onclick”事件,一般用  Form  对象的  onreset  代替。  Select  选择区(下拉菜单、列表)对象  由“指定的元素名称。  length  返回  Select  对象下选项的数目。 selectedIndex  返回被选中的选项的下标。这个下标就是在  options[]  数组中  该选项的位置。如果  Select  对象允许多项选择,则返回第一个被选中的选项的  下标。  form  返回包含本元素的表单对象。  方法  blur()  从对象中移走焦点。  focus()  让对象获得焦点。  事件  onchange options[]; Option  选择项对象  options[]  是一个数组,包含了在同一个  Select  对象下的  Option  对象。Option  对象由“指定。因为  Submit  也是按  钮,所以也有  Button  对象的属性和方法。至于“onclick”事件,一般用  Form  对象的  onsubmit  代替。  Text  文本框对象  由“”指定。Password  对象也是  Text  对象的一种,所以  Password  对象所有的属性、方法和事件,Text  对象都有。  Textarea  多行文本输入区对象  由“