7.浏览器环境

  1. 检测用户浏览器信息的时候 最好不要用userAgent来检测,,而用功能检测法
//比如检测是否是IE
//不推荐:
if(navigator.userAgent.indexOf('MSIE') !== -1){
    // is IE
}else{
    //notIE
}
推荐
if(typeof window.addEventListener =='function'){
}else{
}
  1. 将页面导航到新页面的方法(不完整)必须要加http:// 不然会出现问题
  window.location.href = 'www.hao123.com'
  location = 'http://www.hao123.com'  //
  location.assign('http://www.hao123.com')  // 不加http头效果同第一个
  location.replace('www.hao123.com') //这个的副作用是会在浏览器里的历史记录里会显示此次操作很奇葩
//不加http头,使用replace很奇葩的地方在于第一遍会调到图1视图,再输入一遍之后就会报错。 为什么
Paste_Image.png

Paste_Image.png

Paste_Image.png
  1. 页面刷新的办法:
  1.location.reload()
   2. //地址再次指向自己 location.href= location.href;
  3. //原理类似于上条,  location = location
  1. history
  2. 浏览器的隐私保护,是无法原生获取用户的url地址。


    Paste_Image.png
  3. histroy.back() history.forword()
  4. history.go() 来实现页面跳转, 比如传入-1 就相当于back()
  5. history.state
    history.pushState({},'',url) 可以改变页面的url而不刷新页面,会在浏览器历史记录里添加一条记录,history.state可以获取传入的json参数。 用了这个属性之后 也可以用back() forWord()方法,当history改变的时候 popstate事件会被触发.
    replaceState用法相同,不过不会添加历史记录


    Paste_Image.png

    Paste_Image.png
  6. window.screen 提供的是浏览器以外的环境信息
  7. window.open(url,name ,param)
//示例
window.open ('page.html','newwindow','height=100,width=400,top=0,left=0,toolbar=no,menubar=no,scrollbars=no, resizable=no,location=no, status=no') 
Paste_Image.png

Paste_Image.png
  1. window.moveTo(x,y) window.resizeTo(x,y)
  2. document.referrer 属性可返回载入当前文档的文档的 URL。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 本博客转自:「作者:若愚链接:https://zhuanlan.zhihu.com/p/22361337来源:知乎...
    韩宝亿阅读 2,807评论 0 3
  • Math对象 Math 对象用于执行数学任务。 Math 对象并不像 Date 和 String 那样是对象的类,...
    Zd_silent阅读 456评论 0 0
  • JS Window-浏览器对象模型 浏览器对象模型(BOM)使JS有能力与浏览器对话 由于现代浏览器几乎实现了JS...
    figure_ai阅读 1,299评论 0 2
  • 她的眼神总是聚焦了慌张 仿若从荒芜之地 在找寻渴望的光亮 我却心无旁羁 穿过骤降的冰霜 请给我祝福吧 天际的青鸟已...
    Alberxyxuxuxu阅读 300评论 0 1
  • 当你走过我的身边的时候,我就知道你就是我的影子。 是。我有影子。而且她很光芒。很刺眼。它会触动你的感觉。 请问自己...
    属于我的唯一阅读 503评论 0 0