window 对象的属性
- window.name 表示当前浏览器窗口的名字。属性是一个字符串。
这个属性主要配合超链接和表单的target属性使用。
window.name = 'Hello World';
console.log(window.name);
- window.closed表示窗口是否关闭。属性返回一个布尔值。
这个属性一般用来检查,使用脚本打开的新窗口是否关闭。
var popup = window.open();
if ((popup !== null) && !popup.closed){
//窗口仍然打开着
}
window.opener属性表示打开当前窗口的父窗口。如果当前窗口没有父窗口(即直接在地址栏输入打开),则返回null。
3.window.self和window.window属性都指向窗口本身。这两个属性只读 。
window.self === window //true
window.window === window //true
4.window.frames属性返回一个类似数组的对象,成员为页面内所有框架窗口,包括frame元素和iframe元素。window.frames[0]表示页面中第一个框架窗口。
window.length属性返回当前网页包含的框架总数。如果当前网页不包含frame和iframe元素,那么window.length就返回0。
5.window.frameElement属性主要用于当前窗口嵌在另一个网页的情况(嵌入、或元素),返回当前窗口所在的那个元素节点。如果当前窗口是顶层窗口,或者所嵌入的那个网页不是同源的,该属性返回null。
// HTML 代码如下
// <iframe src="about.html"></iframe>
// 下面的脚本在 about.html 里面
var frameEl = window.frameElement;
if (frameEl) {
frameEl.src = 'other.html';
}
6.window.top属性指向最顶层窗口,主要用于在框架窗口(frame)里面获取顶层窗口。
window.parent属性指向父窗口。如果当前窗口没有父窗口,window.parent指向自身。
if (window.parent !== window.top) {
// 表明当前窗口嵌入不止一层
}
对于不包含框架的网页,这两个属性等同于window对象。
7.window.status属性用于读写浏览器状态栏的文本。但是,现在很多浏览器都不允许改写状态栏文本,所以使用这个方法不一定有效。
8.window.devicePixelRatio属性返回一个数值,表示一个 CSS 像素的大小与一个物理像素的大小之间的比率。也就是说,它表示一个 CSS 像素由多少个物理像素组成。它可以用于判断用户的显示环境,如果这个比率较大,就表示用户正在使用高清屏幕,因此可以显示较大像素的图片。
9.位置大小属性
(1).window.screenX和window.screenY属性,返回浏览器窗口左上角相对于当前屏幕左上角的水平距离和垂直距离(单位像素)。这两个属性只读。
(2).window.innerHeight和window.innerWidth属性,返回网页在当前窗口中可见部分的高度和宽度,即“视口”(viewport)的大小(单位像素)。这两个属性只读。
注意,这两个属性值包括滚动条的高度和宽度。
(3).window.outerHeight和window.outerWidth属性返回浏览器窗口的高度和宽度,包括浏览器菜单和边框(单位像素)。这两个属性只读。
(4).window.scrollX属性返回页面的水平滚动距离,window.scrollY属性返回页面的垂直滚动距离,单位都为像素。这两个属性只读。
注意,这两个属性的返回值不是整数,而是双精度浮点数。如果页面没有滚动,它们的值就是0。
举例来说,如果用户向下拉动了垂直滚动条75像素,那么window.scrollY就是75左右。用户水平向右拉动水平滚动条200像素,window.scrollX就是200左右。
if (window.scrollY < 75) {
window.scroll(0, 75);
}
//如果页面向下滚动的距离小于75像素,那么页面向下滚动75像素。
window.pageXOffset属性和window.pageYOffset属性,是window.scrollX和window.scrollY别名。
10.组件属性
返回浏览器的组件对象。这样的属性有下面几个。
window.locationbar:地址栏对象
window.menubar:菜单栏对象
window.scrollbars:窗口的滚动条对象
window.toolbar:工具栏对象
window.statusbar:状态栏对象
window.personalbar:用户安装的个人工具栏对象
//这些对象的visible属性是一个布尔值,表示这些组件是否可见。这些属性只读。
window.locationbar.visible
window.menubar.visible
window.scrollbars.visible
window.toolbar.visible
window.statusbar.visible
window.personalbar.visible
window 对象的方法
1.(1)window.alert() 方法弹出的对话框,只有一个“确定”按钮,往往用来通知用户某些信息。参数只能是字符串,
window.alert('hello');
(2)window.prompt() 方法弹出的对话框,提示文字的下方,还有一个输入框,要求用户输入信息,并有“确定”和“取消”两个按钮。它往往用来获取用户输入的数据。
var result = prompt('您的年龄',25);
(3)window.confirm() 方法弹出的对话框,除了提示信息之外,只有“确定”和“取消”两个按钮,往往用来征询用户是否同意。confirm方法返回一个布尔值,如果用户点击“确定”,返回true;如果用户点击“取消”,则返回false。
var result = confirm('最近好吗?');