在JavaScript中,一个浏览器窗口就是一个window对象,这个窗口里面的HTML文档就是一个document对象,document对象是window对象的子对象。
| Windows对象下的子对象 | 说明 |
|---|---|
| document | 文档对象,用于操作页面元素 |
| location | 地址对象,用于操作URL地址 |
| navigator | 浏览器对象,用于获取浏览器版本信息 |
| history | 历史对象,用于操作浏览历史 |
| screen | 屏幕对象,用于操作屏幕宽度高度 |
window对象以及下面的location、navigator等子对象,都是用于操作浏览器窗口的,也称为“BOM”,也就是浏览器对象模型。
打开窗口和关闭窗口:
可以使用window对象的open()方法来打开一个新窗口。
window.open(url,target)
url指的是新窗口的地址,如果为空,则表示打开一个空白窗口。target表示打开方式,取值和a标签target属性取值是一样的,当为“_blank”时,表示在新窗口打开;当为“_self”时,则表示在当前窗口打开。
可以使用window.close()来关闭窗口。
window.close()
window.close()是没有参数的。
对话框:
alert():
alter()对话框一般只用于提示文字,在alter()想要实现换行,要使用“\n”。
confirm():
confirm("提示文字")
confirm()对话框不仅提示文字,还提供确认。如果用户点击【确定】按钮,则会返回true;如果点击【取消按钮】则会返回false。
prompt()
prompt("提示文字")
promot()不仅提示文字,还可以返回一个字符串。在弹出的对话框中可以输入内容,promot()会返回输入的内容。
定时器:
setTimeout()和clearTimeout()
可以使用setTimeout()来“一次性”地调用函数,并且可以使用clearTimeout()来取消执行setTimeout()。
setTimeout(code,time);
code是一段代码,函数或者是函数名。time是毫秒表示要经过多久才执行code中的代码。
//是一段函数
setTimeout(function(){alter("welcome!");},2000);
//是一个函数名
setTimeout(alterMes,2000);
setTimeout("alterMes()",2000);
setInterval()和clearInterval()
可以使用setInterval()来“重复性”地调用函数,并且可以使用clearInterval()来取消执行setInterval()。
setInterval(code,time);
setInterval()和setTimeout()语法是一样的,但是setTimeout()只执行一次,而setInterval()可以执行无数次。
location对象:
可以使用window下的location子对象来操作当前窗口的URL。
| 常用的属性 | 说明 | |
|---|---|---|
| href | 当前页面地址 | 、 |
| search | 当前页面地址“?”后面的内容 | |
| hash | 当前页面地址“#”后面的内容 |
可以使用location的href来获取和设置当前页面的地址。
var url = window.location.href;
window.location.href = url;
可以使用location对象的search属性来获取和设置当前页面地址“?”后面的内容
window.location.search
可以使用location对象的hash属性来获取和设置当前页面地址“#”号后面的内容,一般用于锚点链接。
navigator对象
可以使用window对象下的子对象navigator来获取浏览器的类型。