- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第八章操作窗口和框架
第8章 操作窗口和框架 JavaScript作为一种客户端的脚步语言,其必须依赖于客户端浏览器的解释和执行,不能独立于浏览器存在。另一方面,JavaScript是被作为HTML语言的一个部分存在的,在JavaScript中,将浏览器中载入页面的各个部分按HTML标记区分为各种对应的对象。 8.1 示例:模拟Live Messenger的振动闪屏功能 HTML标记从数据结构上来说属于树的拓扑,从根节点“HTML”标记开始,其每个子集都是一颗子树。因此在JavaScript中,页面元素对应的脚本对象也具有树的结构特点,和HTML文档中的结构相对应。最高的页面对象是窗口对象(“window”对象)。代码.htm是使用脚本操作窗口对象,模拟微软的即时聊天工具Live Messenger的振动闪屏功能。 8.2 控制窗口-窗口对象的事件、属性和方法 窗口对象是页面元素对象中比较重要的一个对象,因为其地位比较特殊。窗口对象作为所有页面元素对象的根对象,不仅有着一般页面元素所具有的基本的事件、属性和方法,也有着其自身独有的某些特质。 8.2.1 获取窗口的改变—窗口对象的事件 表中列出了常见的窗口对象事件。 8.2.2 控制窗口的行为—窗口对象的方法 (1)关于“alert”、“confirm”和“prompt”函数在前面的章节中已经做了详细介绍。其实这些函数都是窗口对象的方法。因为在JavaScript中“window”对象可以省略不写,因此看上去好像是直接调用了一个函数来完成这些工作。 (2)窗口对象的“close”方法可以用来关闭窗口。在Internet Explorer浏览器中,对于由原浏览器窗口点击链接,或通过脚本打开的窗口,调用“close”方法时窗口可以直接关闭。但如果是通过双击桌面图标等方式打开的新窗口,在试图使用脚本关闭时会出现提示,询问是否同意关闭当前窗口, (3)“execScript”方法有点类似于“eval”函数,两者都是将一段字符串作为脚本代码来解释执行,但两者间也有着很大的不同。 8.3 打开一个新窗口—窗口的“open”方法详解 窗口的“open”方法是窗口对象一个非常常用的方法。其作用是打开一个新的窗口。该方法接受三个参数,其调用的语法为: open([sURL] [, sName] [, sFeatures] [, bReplace]); 8.3.1 “open”方法的参数说明 参数“sURL”是字符型变量,可选,指定新打开的窗口应当装载页面的URL,缺省时打开一个空白的窗口。 参数“sName”是字符型变量,可选,指定打开窗口的名称。需要注意的是,这里的窗口名称不同于窗口标题栏中的标题。浏览器窗口的名称是窗口对象的一个属性。比如浏览者在点击下面的链接时: a href=”some URL” target=”TheWinName”点我啊/a 会打开一个新的浏览器窗口,该窗口的名称就是“TheWinName”。在调用窗口对象的“open”方法时,如果给出了“sName”参数,且名为“sName”的窗口已经存在,则浏览器会将地址为“sURL”的页面装载入该窗口中。如果“sName”缺省,或者名为“sName”的窗口不存在,则会打开一个新的窗口。 8.3.2 检测弹窗动作是否被拦截 值得注意的是,随着浏览器的发展,未经过用户允许的弹出窗口行为被认为是不友好的,因而常常被浏览器(如IE6.0+Windows XP2或更高版本),或浏览器的插件拦截,无法完成打开新窗口的目的。为了检测打开的新窗口是否被拦截,可以使用前面章节中提及的错误捕获机制。代码.htm是一个可以根据浏览器行为不同而改变的页面。 8.3.3 色彩选择器—“open”方法的应用 在使用窗口对象A的“open”方法打开新窗口B后,新窗口B的“opener”属性被设置为指向窗口A。也就是说,可以在窗口B中使用脚本来控制原窗口。代码.htm是一个利用该特性的例子,其效果是一个色彩选择器。代码-color_dialog.htm是色彩选择器的对话框。 8.4 在网页中使用自定义的对话框 除了窗口的“open”方法外,JavaScript还提供了另外3种弹出窗口的形式,分别是:窗口的“createPopup”方法,用于建立一个弹出式窗体;窗口的“showModalDialog”方法,用于建立一个模式对话框;窗口的“showModelessDialog”方法,用于建立一个非模式对话框。 8.4.1 模拟Windows帮助效果—弹出式窗体的应用 “createPopup”方法的使用语法是: oPopup = window.createPopup(); 该方法返回一个弹出式窗体对象。该弹出窗体初始化的时候状态是隐藏不可见的。在显示弹出式窗体的时
文档评论(0)