1 window
window既是js访问浏览器的接口,也是ECMAScript的全局对象
小知识:var test
与 window.test
定义的变量的区别:
window.test
定义的变量可通过delete window.test
删除。访问时:当没有定义test时可能会报错,但是通过
window.test
访问即使没定义也不会报错(因为相当于一次查询)
1.1 窗口关系(frame)
一个页面可能有多个frame,每个frame对应一个window对象,这就涉及到访问相应frame的window对象的问题。
访问方法可能有:通过数组下标 (window.frames[0]
或window.frames['framename']
)来访问,也可通过window.top
, window.parent
,window.self
来访问
小知识:最高层窗口只有通过window.open 打开才会有name否则没有name
1.2 窗口位置
screenTop
、screenLeft
等属性moveTo
,moveBy
等方法
详情可自己查询。
1.3 窗口大小
innerWidth
,innerHeight
outerWidth
,outerHeight
clientWidth
,clientHeight
等属性resizeTo()
等方法
1.4 窗口打开及关闭
var win=window.open(
'URL','name','各种参数设置')
注意:
- 第二个参数还可以是'_blank','_parent','_self','_top'
- 第三个参数是:width等还有resizable等参数的设置
- 当有些浏览器设置弹出窗口屏蔽时,返回的win就是null
win.close()
win.opener=null
设置新打开的标签页运行在独立进程中运行,不需与打开其的标签页进行通信
注意:打开窗口涉及到安全限制的问题。
2 location
获取URL相关信息。
常用如下:
- 获取URL:location.href
- 获取hash:location.hash
- 获取查询字符串:location.search
(还有hostName,host,pathName等)
hash和查询字符串的区别可浏览:[https://segmentfault.com/n/1330000009872432][1]
assign(URL)
方法:改变浏览的页面(与href赋值效果一样)replace(URL)
方法:修改URL且不会留下浏览记录reload()
方法:重新加载当前页面(默认从缓存中加载),当参数为true时会强制从服务器加载。最好放在代码最后一行。
3 navigator
获取浏览器信息,通常用于检测浏览器类型
navigator.plugins
(可用来检查插件)navigator.appName
navigator.appVersion
4 screen
通常用作测定客户端能力的站点跟踪工具中(站点分析)
availHeight
5 history
go()
back()
forward()
length
属性
6 设置时间函数
var timeoutid=setTimeout(function(){},1000)
clearTimeout(timeoutid)
var timeinteid=setInterval(function(){},1000)
clearInterval(timeoutid)
7 各种弹出框
alert()
confirm('message')
返回true
,false
prompt('message',''defaultValue)
返回输入的内容或null
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。