🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
[TOC] ## 1. 基础 1. JavaScript中的任何一个全局函数或变量都是window的属性,在任何地方都可以用window对象来引用它。 2. 所有的浏览器都支持window对象,它表示浏览器窗口 3. 所有 JavaScript 全局对象、函数以及变量均自动成为 window 对象的成员。 4. 全局变量是 window 对象的属性。 5. 全局函数是 window 对象的方法。 甚至 HTML DOM 的 document 也是 window 对象的属性之一: ~~~ window.document.getElementById("header"); ~~~ 与此相同: document.getElementById("header"); ~~~ <script type="text/javascript"> var name="撼地神牛"; document.write(window.name); </script> ~~~ 2、window与self对象 self对象与window对象完全相同,self通常用于确认就是在当前的窗体内。 ~~~ <script type="text/javascript"> document.write(window == self);      //必须相等,永远都相等   document.write(window.Top == window.self);  //判断当前框架是否是主框架 </script> ~~~ ## 2. 描述 ### 2.1 window对象常见属性 | 属性名称 | 释义 | | --- | --- | | document | 对窗口或框架中含有文档的document对象的只读引用 | | defaultStatus | 一个可读写的字符,用于指定状态栏中默认消息 | | frames | 表示当前窗口中所有的frame对象的集合 | | location | 用于代表窗口或框架的location对象,如果将一个url赋给该属性,那么浏览器将加载并显示该url指定的文档。 | | length | 窗口或框架包含的框架个数 | | history | 对窗口或框架的history对象的只读引用 | | name | 用于存放窗口的名字 | | status | 可读写,用于指定状态栏中的当前信息 | | top | 标识最顶层浏览器窗口 | | parent | 表示包含当前窗口的父窗口 | | opener | 表示打开当前窗口的父窗口 | | closed | 只读布尔值,表示当前窗口是否关闭 | | self | 表示当前窗口 | | screen | 对窗口或框架的screen对象的只读引用,提供屏幕尺寸、颜色深度等信息。 | | navigator | 对窗口或框架的navigator对象的只读引用,通过navigator对象使用可以获得与浏览器相关的信息 | ### 2.2 window对象常见方法 > 由于window对象使用十分频繁,而且又是其它对象的父对象,所以在使用window对象的属性和方法时,JavaScript允许省略window对象名。 | 对象名称 | 释义 | | --- | --- | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | alert() 弹出对话框 confirm() 弹出单击确认对话框,确认返回true,取消返回false prompt() 弹出一个提示对话框,并要求输入一个字符串 blur() 把键盘焦点从顶层浏览器窗口移走 close() 关闭窗口 focus() 把键盘焦点赋给顶层的浏览器窗口 open(url,name) 打开一个新窗口,如果指定了name那么一个url只能打开一次,该url窗口存在时,再此调用open会获得此窗口引用。 scrollTo(x,y) 把窗口滚动到(x,y)坐标指定的位置 scrollBy(offsetx,offsety) 按照指定的位移量移动窗口 setTimeour(timer) 在经过指定的时间后执行代码 clearTimeout() 取消对指定的定时器 moveTo(x,y) 将窗口移动到一个绝对位置 moveBy(offsetx,offsety) 将窗口移动的指定的位移量处 resizeTo(x,y) 设置窗口的大小,经测试只在ie中有效 print() 相当于浏览器工具栏中的打印 setInterval(func(),time) 周期time执行指定的代码func,返回一个执行id clearInterval() 取消周期性的执行代码,参入为setInterval返回的id ## 3. 用途 1. 操作父页面(刷新,赋值,方法调用)