window对象
是BOM的核心对象,它表示浏览器的一个实例。很多全局的JavaScript对象(如location和navigator)实际上都是window对象的属性
window对象会在 <body> 或 <frameset> 每次出现时被自动创建。
窗口的位置(也可以理解为浏览器的位置)
- 窗口距离屏幕左边的位置:screenLeft & screenX
- 窗口距离屏幕上边的位置:screenTop & screenY
以上两个方法都有兼容性问题,可搭配使用
- 窗口的移动:moveBy(x,y) 移动多少像素 & MoveTo(x,y) 移动到坐标轴位置
这种方法可能被浏览器禁用,opera和IE7(及更高版本)默认禁用,此方法不适用于框架,只能对最外层的window对象使用
窗口大小
- innerWidth、innerHeight、outerWidth、outerHeight
- 遇到IE6兼容性问题,可使用DOM的方式解决(document.documentElement.clientHeight 标准模式 或者 document.body.clientWidth 混淆模式)
没有文档声明则为混淆模式
- resizeTo() 和 resizeBy()
操作基本同上moveTo/By 方法,注意事项亦是
导航和打开窗口
-
window.open()
传入参数(4):URL、窗口目标、一个特性字符串(新打开窗口的一些属性设置)及一个表示新页面是否取代浏览器历史记录中当前加载页面的布尔值
此方法会返回一个指向新窗口的引用,即一个维持母窗口和子窗口的联系,母窗口可对子窗口进行一定的操作,如果要切断这种联系,需要将其opener属性设置为null
- 现在的浏览器对弹出窗口有一定限制,如果弹出窗口被浏览器屏蔽了,其引用为null(window.open()=null),弹窗被屏蔽,但弹窗的相关信息还是会显示
间歇调用和超时调用(定时器)
- setTimeout 、setInterval
一般认为,使用超时调用来模仿间歇调用是一种最佳模式
系统对话框
- alert() ; confirm() ; prompt()
- window.print() (打印对话框) ;** window.find()** (查找对话框)
/__________________________________________ 接下来都是window对象的成员对象(如window.location) __________________________________________/
location对象
location对象提供了与当前窗口中加载的文档有关的信息,还提供了一些导航功能,它的所有属性(如hash)都是可读可写的。这个对象的强大体现在它可以将URL拆分成几个片段供我们使用。
位置操作(网址位置,不是窗口位置)
- assign(url)
更改页面的网址,并生成一条历史纪录
- replace(url)
更改页面网址,并禁止返回操作,不会生成此条浏览器记录(安全性)
- reload()
重新加载页面,括号里什么都不填就会重缓存重新加载页面,如果加上 true 则从服务器重新加载;位于reload()后的代码可能会出现不执行的情况,所以最好放在代码最后
navigator对象
此对象是识别客户端浏览器的事实标准。它有一套浏览器的属性可供查看。
检测插件
- 非IE浏览器:利用navigator.plugins[i].name 来检测是否存在这个插件
- IE 浏览器:使用专有的ActiveXObject类型,创建一个实例
plugins集合有个refresh()方法,可以刷新插件
注册处理程序
- registerContentHandler() & registerProtocolHandler()
screen对象
———
获取客户端屏幕信息
history对象
———
操作浏览器的历史纪录