本文详细解析JavaScript中核心的document与window对象。涵盖document对象的文档属性(如颜色、链接、表单)及写入方法,以及window对象的窗口控制属性(如历史、框架)和交互方法(如弹窗、定时器)。通过对比两者在location等属性上的差异,帮助开发者准确掌握浏览器环境下的DOM与窗口操作。
document对象详解
该对象是window和frames对象的一个属性,代表显示在窗口或框架内的一个文档。
属性
alinkColor:活动链接的颜色(对应HTML中的ALINK属性)。
anchor:一个HTML锚点,通过<A NAME=>标记创建(该属性本身也是一个对象)。
anchors array:列出文档中锚点对象的数组(由<A NAME=>定义,该属性本身也是一个对象)。
bgColor:文档的背景颜色(对应HTML中的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:把文本写入文档,并以换行符结尾。
[window对象]
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.0 beta 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():页面关闭时触发。