记录window对象的原因是项目中需要跨越iframe读取浏览器的location,如果直接用window.location,那么得到的是iframe的src值,那么如何跨越iframe获取浏览器的location呢,用到
window.top.document.location
下面对window对象进行详细的探索:
1、window对象表示:浏览器中打开的窗口。如果文档包含框架(frame或iframe标签),浏览器会为HTML文档创建一个window对象,并为每个框架创建一个额外的window对象。
2、window对象集合
① frames[]:返回窗口中所有命名的框架。
3、window对象属性
① closed:返回窗口是否已被关闭
② defaultStatus:设置或返回窗口状态栏中的默认文本
③ document:对document对象的只读引用,参考Document对象
④ history:对history的只读引用,参考history对象
⑤ innerheight/innerwidth:返回窗口的文档显示区的高度/宽度
⑥ length:设置或返回窗口中的框架数量
⑦ location:用于窗口或框架的Location对象,参考Location对象
⑧ name:设置或返回窗口的名称
⑨ navigator:对navigator对象的只读引用,参考navigator对象
⑩ opener:返回对创建此窗口的窗口引用
……
4、window对象描述
① Window 对象表示一个浏览器窗口或一个框架。在客户端 JavaScript 中,Window 对象是全局对象,所有的表达式都在当前的环境中计算。也就是说,要引用当前窗口根本不需要特殊的语法,可以把那个窗口的属性作为全局变量来使用。例如,可以只写 document,而不必写 window.document。
② 同样,可以把当前窗口对象的方法当作函数来使用,如只写 alert(),而不必写 Window.alert()。
③ 除了上面列出的属性和方法,Window 对象还实现了核心 JavaScript 所定义的所有全局属性和方法。
④ Window 对象的 window 属性和 self 属性引用的都是它自己。当你想明确地引用当前窗口,而不仅仅是隐式地引用它时,可以使用这两个属性。除了这两个属性之外,parent 属性、top 属性以及 frame[] 数组都引用了与当前 Window 对象相关的其他 Window 对象。
⑤ 要引用窗口中的一个框架,可以使用如下语法:
frame[i] //当前窗口的框架 self.frame[i] //当前窗口的框架 w.frame[i] //窗口 w 的框架
⑥ 要引用一个框架的父窗口(或父框架),可以使用下面的语法:
parent //当前窗口的父窗口 self.parent //当前窗口的父窗口 w.parent //窗口 w 的父窗口
⑦ 要从顶层窗口含有的任何一个框架中引用它,可以使用如下语法:
top //当前框架的顶层窗口 self.top //当前框架的顶层窗口 f.top
新的顶层浏览器窗口由方法 Window.open() 创建。当调用该方法时,应把 open() 调用的返回值存储在一个变量中,然后使用那个变量来引用新窗口。新窗口的 opener 属性反过来引用了打开它的那个窗口。
以上参考来源于:http://www.w3school.com.cn/jsref/dom_obj_window.asp