JavaScript入门教程(10) 认识其他对象


anchors[]; links[]; Link 连接对象
用法:document.anchors[[x]]; document.links[[x]]; <anchorId>; <linkId>
  document.anchors 是一个数组,包含了文档中所有锚标记(包含 name 属性的<a>标记),按照在文档中的次序,从 0 开始给每个锚标记定义了一个下标。
  document.links 也是一个数组,包含了文档中所有连接标记(包含 href 属性的<a>标记和<map>标记段里的<area>标记),按照在文档中的次序,从 0 开始给每个连接标记定义了一个下标。
  如果一个<a>标记既有 name 属性,又有 href 属性,则它既是一个 Anchor 对象,又是一个 Link 对象。
  在 IE 中,如果在<a>标记中添加“id="..."”属性,则这个<a>对象被赋予一个标识(ID),调用这个对象的时候只需要使用“<id>”就行了。很多文档部件都可以用这个方法来赋予 ID,但要注意不能有两个 ID 相同。
anchors 和 links 作为数组,有数组的属性和方法。单个 Anchor 对象没有属性;单个 Link 对象的属性见下。

属性
protocol; hostname; port; host; pathname; hash; search; href 与 location 对象相同。
target
返回/指定连接的目标窗口(字符串),与<a>标记里的 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>标记)。因为每个插件的不同,每个 Embed 对象也有不同的属性和方法。
forms[]; Form 表单对象 document.forms[] 是一个数组,包含了文档中所有的表单(<form>)。要引用单个表单,可以用 document.forms[x],但是一般来说,人们都会这样做:在<form>标记中加上“name="..."”属性,那么直接用“document.<表单名>”就可以引用了。
Form 对象的属性
name 返回表单的名称,也就是<form name="...">属性。
action
返回/设定表单的提交地址,也就是<form action="...">属性。
method 返回/设定表单的提交方法,也就是<form method="...">属性。
target 返回/设定表单提交后返回的窗口,也就是<form target="...">属性。
encoding 返回/设定表单提交内容的编码方式,也就是<form enctype="...">属性。
length 返回该表单所含元素的数目。
方法
reset() 重置表单。这与按下“重置”按钮是一样的。
submit() 提交表单。这与按下“提交”按钮是一样的。
事件
onreset; onsubmit
以下从“Button”到“Textarea”都是表单的元素对象。
Button 按钮对象 由“<input type="button">”指定。引用一个 Button 对象,可以使用“<文档对象>.<表单对象>.<按钮名称>”。<按钮名称>指在<input>标记中的“name="..."”属性的值。引用任意表单元素都可以用这种方法。
属性
name 返回/设定用<input name="...">指定的元素名称。
value
返回/设定用<input value="...">指定的元素的值。
form 返回包含本元素的表单对象。
方法
blur() 从对象中移走焦点。
focus() 让对象获得焦点。
click() 模拟鼠标点击该对象。
事件
onclick; onmousedown; onmouseup
Checkbox 复选框对象 由“<input type="checkbox">”指定。
属性
name 返回/设定用<input name="...">指定的元素名称。
value
返回/设定用<input value="...">指定的元素的值。
form 返回包含本元素的表单对象。
checked 返回/设定该复选框对象是否被选中。这是一个布尔值。
defaultChecked 返回/设定该复选框对象默认是否被选中。这是一个布尔值。
方法
blur() 从对象中移走焦点。
focus()
让对象获得焦点。
click() 模拟鼠标点击该对象。
事件
onclick
elements[]; Element 表单元素对象 <表单对象>.elements 是一个数组,包含了该表单所有的对象。一般我们不用该数组,而直接引用各个具体的对象。
Hidden 隐藏对象 由“<input type="hidden">”指定。
属性
name 返回/设定用<input name="...">指定的元素名称。
value
返回/设定用<input value="...">指定的元素的值。
form
返回包含本元素的表单对象。
Password 密码输入区对象 由“<input type="password">”指定。
属性
name 返回/设定用<input name="...">指定的元素名称。
value
返回/设定密码输入区当前的值。
defaultValue
返回用<input value="...">指定的默认值。
form
返回包含本元素的表单对象。
方法
blur() 从对象中移走焦点。
focus()
让对象获得焦点。
select() 选中密码输入区里全部文本。
事件
onchange
Radio 单选域对象 由“<input type="radio">”指定。一组 Radio 对象有共同的名称(name 属性),这样的话,document.formName.radioName 就成了一个数组。要访问单个 Radio 对象就要用:document.formName.radioName[x]。
单个 Radio 对象的属性
name 返回/设定用<input name="...">指定的元素名称。
value
返回/设定用<input value="...">指定的元素的值。
form
返回包含本元素的表单对象。
checked
返回/设定该单选域对象是否被选中。这是一个布尔值。
defaultChecked
返回/设定该对象默认是否被选中。这是一个布尔值。
方法
blur() 从对象中移走焦点。
focus()
让对象获得焦点。
click()
模拟鼠标点击该对象。
事件
onclick
Reset 重置按钮对象 由“<input type="reset">”指定。因为 Reset 也是按钮,所以也有 Button 对象的属性和方法。至于“onclick”事件,一般用 Form 对象的 onreset 代替。
Select 选择区(下拉菜单、列表)对象 由“<select>”指定。
属性
name 返回/设定用<input name="...">指定的元素名称。
length
返回 Select 对象下选项的数目。
selectedIndex
返回被选中的选项的下标。这个下标就是在 options[] 数组中该选项的位置。如果 Select 对象允许多项选择,则返回第一个被选中的选项的下标。
form
返回包含本元素的表单对象。
方法
blur() 从对象中移走焦点。
focus()
让对象获得焦点。
事件
onchange
options[]; Option 选择项对象 options[] 是一个数组,包含了在同一个 Select 对象下的 Option 对象。Option 对象由“<select>”下的“<options>”指定。
options[] 数组的属性
length; selectedIndex 与所属 Select 对象的同名属性相同。
单个 Option 对象的属性
text 返回/指定 Option 对象所显示的文本
value
返回/指定 Option 对象的值,与<options value="...">一致。
index
返回该 Option 对象的下标。对此并没有什么好说,因为要指定特定的一个 Option 对象,都要先知道该对象的下标。这个属性好像没有什么用。
selected
返回/指定该对象是否被选中。通过指定 true 或者 false,可以动态的改变选中项。
defaultSelected 返回该对象默认是否被选中。true / false。
Submit 提交按钮对象 由“<input type="submit">指定。因为 Submit 也是按钮,所以也有 Button 对象的属性和方法。至于“onclick”事件,一般用 Form 对象的 onsubmit 代替。
Text 文本框对象 由“<input type="text">”指定。Password 对象也是 Text 对象的一种,所以 Password 对象所有的属性、方法和事件,Text 对象都有。
Textarea 多行文本输入区对象 由“<textarea>”指定。Textarea 对象所有的属性、方法和事件和 Text 对象相同,也就是跟 Password 对象一样。
images[]; Image 图片对象 document.images[] 是一个数组,包含了文档中所有的图片(<img>)。要引用单个图片,可以用 document.images[x]。如果某图片包含“name”属性,也就是用“<img name="...">”这种格式定义了一幅图片,就可以使用“document.images['...']”这种方法来引用图片。在 IE 中,如果某图片包含 ID 属性,也就是用“<img id="...">”这种格式定义了一幅图片,就可以直接使用“<imageID>”来引用图片。
单个 Image 对象的属性
name; src; lowsrc; width; height; vspace; hspace; border 这些属性跟<img>标记里的同名属性是一样的。在 Netscape 里,除了 src 属性,其它属性(几乎全部)都不能改的,即使改了,在文档中也不能显示出效果来。这些属性最有用的就是 src 了,通过对 src 属性赋值,可以实时的更改图片。
事件
onclick
不显示在文档中的 Image 对象
不显示在文档中的 Image 对象是用 var 语句定义的:
var myImage = new Image(); 或
var myImage = new Image(<图片地址字符串>);
然后就可以像一般 Image 对象一样对待 myImage 变量了。不过既然它不显示在文档中,以下属性:lowsrc, width, height, vspace, hspace, border 就没有什么用途了。一般这种对象只有一个用:预读图片(preload)。因为当对对象的 src 属性赋值的时候,整个文档的读取、JavaScript 的运行都暂停,让浏览器专心的读取图片。预读图片以后,浏览器的缓存里就有了图片的 Copy,到真正要把图片放到文档中的时候,图片就可以立刻显示了。现在的网页中经常会有一些图像连接,当鼠标指向它的时候,图像换成另外一幅图像,它们都是先预读图像的。
预读图像的 JavaScript 例子
var imagePreload = new Image();
imagePreload.src = '001.gif';
imagePreload.src = '002.gif';
imagePreload.src = '003.gif';
以上例子适合预读少量图片。
function imagePreload() {
var imgPreload = new Image();
for (i = 0; i < arguments.length; i++) {
imgPreload.src = arguments[i];
}
}
imagePreload('001.gif', '002.gif', '003.gif', '004.gif', '005.gif');

以上例子适合预读大量图片。

« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3