JavaScript中的Window窗口对象

时间:2021-05-26

JavaScript中的Window窗口对象
他是JavaScript中最大的对象,它描述的是一个浏览器窗口。一般要引用它的属性和方法时,不需要用“window.xxx”这种形式,而直接使用“xxx”。一个框架页面也是一个窗口。

Window窗口对象有如下属性:



name窗口的名称,由打开它的连接(<atarget="...">)或框架页(<framename="...">)或某一个窗口调用的open()方法(见下)决定。一般我们不会用这个属性。

status指窗口下方的“状态栏”所显示的内容。通过对status赋值,可以改变状态栏的显示。

opener用法:window.opener;返回打开本窗口的窗口对象。注意:返回的是一个窗口对象。如果窗口不是由其他窗口打开的,在Netscape中这个属性返回null;在IE中返回“未定义”(undefined)。undefined在一定程度上等于null。注意:undefined不是JavaScript常数,如果你企图使用“undefined”,那就真的返回“未定义”了。

self指窗口本身,它返回的对象跟window对象是一模一样的。最常用的是“self.close()”,放在<a>标记中:“<ahref="javascript:self.close()">关闭窗口</a>”。

parent返回窗口所属的框架页对象。

top返回占据整个浏览器窗口的最顶端的框架页对象。

history历史对象,见下。

location地址对象,见下。

document文档对象,见下。



Window窗口对象有如下方法:
第一个方法是open()打开一个窗口。
用法:
open(<URL字符串>,<窗口名称字符串>,<参数字符串>);

说明:



<URL字符串>:描述所打开的窗口打开哪一个网页。如果留空(''),则不打开任意网页。

<窗口名称字符串>:描述被打开的窗口的名称(window.name),可以使用'_top'、'_blank'等内建名称。这里的名称跟“<ahref="..."target="...">”里的“target”属性是一样的。

<参数字符串>:描述被打开的窗口的样貌。如果只需要打开一个普通窗口,该字符串留空(''),如果要指定样貌,就在字符串里写上一到多个参数,参数之间用逗号隔开。


例:打开一个400x100的干净的窗口:
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()方法有返回值,返回的就是它打开的窗口对象。比如
varnewWindow=open('','_blank');

这样把一个新窗口赋值到“newWindow”变量中,以后通过“newWindow”变量就可以控制窗口了。

close()关闭一个已打开的窗口。
用法:
window.close()


self.close()

主要作用是关闭本窗口;
<窗口对象>.close():关闭指定的窗口。注意如果该窗口有状态栏,调用该方法后浏览器会警告:“网页正在试图关闭窗口,是否关闭?”然后等待用户选择是否;如果没有状态栏,调用该方法将直接关闭窗口。
另外Window窗口对象还有如下方法



blur()使焦点从窗口移走,窗口变为“非活动窗口”。

focus()是窗口获得焦点,变为“活动窗口”。不过在Windows98,该方法只能使窗口的标题栏和任务栏上的相应按钮闪烁,提示用户该窗口正在试图获得焦点。

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中指定事件处理程序的时候,我们是把它写在<body>标记中的。
window.onunload;发生在用户退出文档(或者关闭窗口,或者到另一个页面去)的时候。与onload一样,要写在HTML中就写到<body>标记里。



window.onresize;发生在窗口被调整大小的时候。

window.onblur;发生在窗口失去焦点的时候。

window.onfocus;发生在窗口得到焦点的时候。

window.onerror;发生在错误发生的时候。它的事件处理程序通常就叫做“错误处理程序”(ErrorHandler),用来处理错误。上边已经介绍过,要忽略一切错误,就使用:
functionignoreError(){
returntrue;
}
window.onerror=ignoreError;

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章