BOM

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8" />
  <title></title>
 </head>
 <body>
  <script type="text/javascript">
   /*
    * BOM
    * -浏览器对象模型
    * -BOM可以使我们通过JS来操作浏览器
    * -在BOM中为我们提供一组对象,用来完成对浏览器的操作
    * -BOM对象
    *  window
    *   -代表的是整个浏览器的窗口,同时window也是网页中的全局对象
    *  Navigator
    *   -代表的当前浏览器的信息,通过该对象可以来识别不同的浏览器
    *  Location
    *  -代表当前浏览器的地址栏信息,可以通过Location可以获取地址栏信息,或者操作浏览器跳转页面
    *  History
    * -代表浏览器的历史记录,可以通过该对象来操作浏览器的历史记录
    *  由于隐私的原因,该对象不能获取到具体的历史记录,只能操作浏览器向前或者向后翻页
    *  而且该操作只在当前访问时有效
    *  Screen
    *  -代表用户的屏幕的信息,通过该对象可以获取到用户的显示器的相关信息
    *
    *
    *
    *  BOM这些对象在浏览器中都是作为window对象的属性来保存的
    * 可以通过window对象来使用,也可以直接使用
    */
   
//    Navigator
//       -代表的当前浏览器的信息,通过该对象可以来识别不同的浏览器
//     由于历史原因,Navigator对象中大部分属性都已经不能帮我们识别浏览器
//     一般我们只会使用userAgent(浏览器)来判断浏览器的信息
//     userAgent是一个字符串,这个字符串,这个字符串中包含有用来描述浏览器信息的内容
//     不同浏览器会有不同的userAgent
    
//    在IE11中已经将微软和IE相关的标识都去除了   所以我们基本不能通过userAgent识别了
    var ua = navigator.appName;
    console.log(ua);
//    /firefox/i正则表达式
    if(/firefox/i.test(ua)){
     alert('火狐浏览器');
    }else if(/chrome/i.test(ua)){
     alert('谷歌浏览器');
    }else if(/mise/i.test(ua)){
      alert('IE浏览器')
    }else if('ActiveXObject' in window){
     alert("IE11浏览器");
    }
    
    /*
     * 如果通过userAgent不能判断,还可以通过一些浏览器特有的对象,来判段浏览器的信息
     * 比如:ActiveXobject 实际是构造函数
     */
//    看window 里面有没有这个属性
//    if('ActiveXObject' in window){
//     alert('IE浏览器')
//    }else{
//     alert('不是IE浏览器')
//    }
//    
  </script>
 </body>
</html>

posted @ 2020-04-11 13:02  Smile*^  阅读(101)  评论(0编辑  收藏  举报