第7章Window及相关顶级对象..doc
文本预览下载声明
第 7 章 Window 及相关顶级对象
在“JavaScript 基于对象编程”一章中,读者基本理解了 Window 相关顶级对象及它们 之间的关系。在“文档结构模型(DOM)”一章中,继续加深了这种认识并从对象模型层次关 系的角度重点分析了对象的产生过程。本章将从实际应用的角度出发,讨论 Window、Frames、 Navigator、Screen、History、Location、Document 等相关顶级对象的属性、语法及如何创建、 使用等问题。通过本章的学习,读者应能使用 JavaScript 脚本生成并管理浏览器基本框架, 并且熟悉框架之间的通信方法。
7.1 顶级对象模型参考
在 DOM 架构中,Window、Frames、Navigator 等顶级对象产生于浏览器载入文档至关 闭文档期间的不同阶段,并起着互不相同且不可代替的作用,如 Window 对象在启动浏览器 载入文档的同时生成,与当前浏览器窗口相关,包含窗口的最小最大化、尺寸大小等属性, 同时具有关闭窗口、创建新窗口等方法;而 Location 对象以 URL 的形式载入当前窗口,并 保存正在浏览的文档的位置及其构成信息,如协议、主机名、端口、路径、URL 的查询字 符串部分等,顶级模型的结构如图 7.1 所示。
图 7.1 顶级对象模型层次结构
可见,Window 对象在层次中的最上层,而 Document 对象处于顶级对象的最底层。一 般说来,Frames 对象在 Window 对象的下层,但当目前文档包含框架集时,该框架集中的 每个框架都包含单独的 Window 对象;每个 Window 对象都直接包含一个(或者间接包含多 个)Document 对象。首先来了解 Window 对象。
7.2 Window 对象
简而言之,Window 对象为浏览器窗口对象,为文档提供一个显示的容器。当浏览器载 入目标文档时,打开浏览器窗口的同时,创建 Window 对象的实例,Web 应用程序开发者可 通过 JavaScript 脚本引用该实例,从而进行诸如获取窗口信息、设置浏览器窗口状态或者新
建浏览器窗口等操作。同时,Window 对象提供一些方法产生图形用户界面中用于客户与页 面进行交互的对话框(模式或者非模式),并能通过脚本获取其返回值然后决定浏览器后续 行为。
由于 Window 对象是顶级对象模型中的最高级对象,对当前浏览器的属性和方法,以及 当前文档中的任何元素的操作都默认以 Window 对象为起始点,并按照对象的继承顺序进行 访问和相关操作,所以在访问这些目标时,可将引用 Window 对象的代码省略掉,如在需要 给客户以警告信息的场合调用 Window 对象的 alert()方法产生警告框,直接使用 alert(targetStr) 语句,而不需要使用 window.alert(targetStr)的方法。但在框架集或者父子窗口通信时,须明 确指明要发送消息的窗口名称。
7.2.1 交互式对话框
使用 Window 对象产生用于客户与页面交互的对话框主要有三种:警告框、确认框和提 示框等,这三种对话框使用 Window 对象的不同方法产生,功能和应用场合也不大相同。
1.警告框
警告框使用 Window 对象的 alert()方法产生,用于将浏览器或文档的警告信息(也可能 不是恶意的警告)传递给客户。该方法产生一个带有短字符串消息和“确定”按钮的模式对 话框,且单击“确定”按钮后对话框不返回任何结果给父窗口。此方法的语法如下:
window.alert(Str);
alert(Str);
其中参数可以是已定义变量、文本字符串或者是表达式等。当参数传入时,将参数的类
型强制转换为字符串然后输出:
var MyName=YSQ;
var iNum=1+1;
alert(\nHello +MyName+ :\n MyResult: 1+1= +iNum+ \n);
上述代码运行后,弹出警告框如图 7.2 所示。
图 7.2 警告框实例
注意:模式对话框由父窗口创建,并使父窗口无效直到该对话框被关闭之后父窗口才能被用户激活,其 内部拥有消息循环;非模式对话框由父窗口创建,对话框创建后立即返回,并与父窗口共用一个 消息循环,在对话框被关闭之前,父窗口能被激活进行各种操作。
2.确认框
确认框使用 Window 对象的 conform()方法产生,用于将浏览器或文档的信息(如表单 提交前的确认等)传递给客户。该方法产生一个带有短字符串消息和“确定”、“取消”按钮 的模式对话框,提示客户选择单击其中一个按钮表示同意该字符串消息与否,“确定”按钮 表示同意,“取消”按钮表
显示全部