window 对象
window
对象简介
在 JavaScript 中,一个浏览器窗口就是一个 window
对象(这句话很重要)。如果浏览器当前打开了 3 个窗口,也就有 3 个不同的 window
对象。
表 13-1 window
对象及其子对象
子对象 | 说明 |
---|---|
document | 文档对象,用于操作页面元素 |
location | 地址对象,用于操作 URL 地址 |
navigator | 浏览器对象,用于获取浏览器版本信息 |
history | 历史对象,用于操作浏览历史 |
screen | 屏幕对象,用于操作屏幕宽度高度 |
一个窗口就是一个 window
对象,这个窗口里面的 HTML 文档就是一个 document
对象,document
对象是 window
对象的子对象。
window
对象及下面这些 location
、navigator
等子对象,由于都是用于操作浏览器窗口的,所以我们又称之为“BOM”,也就是 Browser Object Module(浏览器对象模型)
表 13-2 window
对象的常用方法
方法 | 说明 |
---|---|
alert() | 提示对话框 |
confirm() | 判断对话框 |
prompt() | 输入对话框 |
open() | 打开窗口 |
close() | 关闭窗口 |
setTimeout() | 开启“一次性”定时器 |
clearTimeout() | 关闭“一次性”定时器 |
setInterval() | 开启“重复性”定时器 |
clearInterval() | 关闭“重复性”定时器 |
对于 window
对象,无论是它的属性,还是方法,都可以省略 window
前缀。
window
对象的属性和方法非常多,但是大多数都用不上。在这一章中,我们只介绍最实用的属性和方法。掌握好这些已经完全够了,其他的属性和方法,可以直接忽略掉。
窗口操作
在 JavaScript 中,窗口常见的操作有两种:打开窗口和关闭窗口。
window.open(url, target)
,返回一个窗口对象w
,这个返回的窗口对象w.document.write()
,就可以写东西啦url
指的是新窗口的地址,如果url
为空,则表示打开一个空白窗口。空白窗口很有用,我们可以使用document.write()
往空白窗口输出文本,甚至输出一个 HTML 页面target
表示打开方式,它的取值跟a
标签中target
属性的取值是一样的,常用取值有两个:_blank
和_self
。当 target 为_blank
(默认值)时,表示在新窗口中打开;当target
为_self
时,表示在当前窗口中打开- 有一点需要提醒大家:如果你打开的是同一个域名下的页面或空白窗口,就可以像上面那样操作新窗口的元素或样式;但是如果你打开的是另外一个域名下的页面,是不允许操作新窗口的内容的,因为涉及 跨域 的问题
在 JavaScript 中,我们可以使用 window.close()
来关闭一个新窗口。
window.close()
,该方法是没有参数的
对话框
- 对话框,alert("abc\n"),comfirm("abc\n")用户点确定返回 true,点取消返回 false,prompt("abc\n")返回一个用户输入的字符串
定时器
- 定时器 var timer = setTimeOut(code,time),clearTimeout(timer)
- code 可以放
- 需要引号的,'一段代码','函数名()'
- 无需引号的,匿名函数,函数名
- time 的单位是 ms
- setInterval,clearInterval
- code 可以放
location 对象
- location 对象 -> 当前窗口的 URL
- href,-> window.location.href
- search ?后面的内容
- hash #后面的内容
navigator 对象
- navigator 对象,获取浏览器的类型