首頁  >  文章  >  web前端  >  IE11中navigator.userAgent變化的實例代碼

IE11中navigator.userAgent變化的實例代碼

零下一度
零下一度原創
2017-06-30 10:15:361555瀏覽

   在原來判斷瀏覽器是否是ie時,我們可以根據navigator.userAgent中時候有MSIE,但是IE11進行變革,userAgent中不在包含MSIE字段,

#在實際專案中,入到類似的在控制台報錯問題,就是在進行校驗瀏覽器型號時,具體方法如下:

    function  getBrowserInfo(){

#      var Sys = {

#      var Sys = {

## var ua = navigator.userAgent.toLowersCase();

      var re = /(msie I firefox | chrome | opera | version).*?([\d.]+)/;

| opera | 」.*?([\d.]+)/; #      var m = ua.match(re);

      Sys.browser = m[1].replace(/version/,"'sfari'");#a]; [2];

      return;

    }

         }

    依此方法,就可以獲取到Sys資訊了,裡面有的呼叫器資訊,可以直接瀏覽器資訊即可;

    但是生產環境突然無法登陸,用戶回饋是利用IE11進行操作的,所以直接用IE11進行測試,具體報錯如下:

    7     RIP 

##    7     RIP 

## 77: null引用的屬性「1」    】

     根據報錯顯示位置,定位在正則匹配後無法獲取到m;

     瀏覽器navigator.userAgent改變,具體變為:

    "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; NET 29; NET4.0C;     .NET4.0E; Shuame; rv:11.0) like Gecko";

     所以更換正規判斷:var re = /(msie I firefox | chrome opera: 更換正規判斷* )*. ?([\d.]+)/;

###    這樣問題就解決了,ie11相容性得到了很大改善,還有很多改善,未完待續。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 ###

以上是IE11中navigator.userAgent變化的實例代碼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn