window、location、history、navigator、screen

window

  • window.open(URL,[name,features,replace]) 打开一个新的浏览器窗口或查找一个已命名的窗口
  • window.close() 关闭窗口
  • window.confirm(content) 打开一个确认弹窗,点击确定或者取消返回 Boolean 值
  • window.prompt(label, defaultValue) 打开一个输入框,点击确定返回文本内容,点击取消返回 null

location

属性
  • location.href: 整个 URL
  • location.protocol:当前 URL 的协议,包括冒号
  • location.host:主机,包括冒号和端口
  • location.hostname:主机名,不包括端口
  • location.port:端口号
  • location.pathname:URL 的路径部分,从根路径 / 开始
  • location.search:查询字符串部分,从问号 ? 开始
  • location.hash:片段字符串部分,从 # 开始
  • location.username:域名前面的用户名
  • location.password:域名前面的密码
  • location.origin:URL 的协议、主机名和端口
方法
  • Location.assign() 方法接受一个 URL 字符串作为参数,使得浏览器立刻跳转到新的 URL。
  • Location.replace() 方法接受一个 URL 字符串作为参数,使得浏览器立刻跳转到新的 URL。区别于改变 href 和调用 assign 方法不会产生新的历史记录,因此无法后退回来。
  • Location.reload() 方法使得浏览器重新加载当前网址,相当于按下浏览器的刷新按钮。
  • Location.toString()方法返回整个 URL 字符串
URL 的编码和解码
  • encodeURI() 方法用于转码整个 URL。它的参数是一个字符串,代表整个 URL。它会将元字符和语义字符之外的字符,都进行转义。
  • encodeURIComponent() 方法用于转码 URL 的组成部分,会转码除了语义字符之外的所有字符,即元字符也会被转码。所以,它不能用于转码整个 URL。它接受一个参数,就是 URL 的片段。
  • decodeURI() 方法用于整个 URL 的解码。它是 encodeURI() 方法的逆运算。它接受一个参数,就是转码后的 URL。
  • decodeURIComponent() 用于URL 片段的解码。它是 encodeURIComponent() 方法的逆运算。它接受一个参数,就是转码后的 URL 片段。

history

前进后退
  • history.back() 后退到上一个页面
  • history.forward() 进入历史的下一个页面
  • history.go(step) step为正前进step个页面,step为负后退step和页面
操作历史
  • history.pushState(state, title, url) 不刷新页面并添加一条历史记录,title 表示下个页面的标题 ( 貌似目前所有浏览器都忽略 state 和 title ) url 表示新的地址。
  • history.replaceState(state, title, url) 替换当前地址栏里的 url,state 和 title 会被所有浏览器忽略。
方法监听
  • popstate,前进或者后退时会触发。pushState 和 replaceState 不会触发此事件。
  • hashchange,当前页面的hash值发生变化时触发。

navigator

  • navigator.userAgent 判断浏览器类型等信息

screen

  • 获取窗口文档显示区的宽高:window.innerHeight、window.innerWidth
  • 获取显示屏幕的高度和宽度:screen.availHeight、window.awailWidth

你可能感兴趣的:(window、location、history、navigator、screen)