Rumah hujung hadapan web tutorial js JS判断浏览器类型及版本实例详解

JS判断浏览器类型及版本实例详解

Jun 28, 2017 pm 02:48 PM
firefox ie javascript webkit penghakiman bingkai pelayar

[javascript] view plain copy

今天用到JS判断浏览器类型,于是就系统整理了一下,便于后期使用。  

[javascript] view plain copy

  /* 

   * 描述:判断浏览器信息 

   * 编写:LittleQiang_w 

   * 日期:2016.1.5 

   * 版本:V1.1 

   */  

  

  //判断当前浏览类型  

  function BrowserType()  

  {  

      var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串  

      var isOpera = userAgent.indexOf("Opera") > -1; //判断是否Opera浏览器  

      var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera; //判断是否IE浏览器  

      var isEdge = userAgent.indexOf("Windows NT 6.1; Trident/7.0;") > -1 && !isIE; //判断是否IE的Edge浏览器  

      var isFF = userAgent.indexOf("Firefox") > -1; //判断是否Firefox浏览器  

      var isSafari = userAgent.indexOf("Safari") > -1 && userAgent.indexOf("Chrome") == -1; //判断是否Safari浏览器  

      var isChrome = userAgent.indexOf("Chrome") > -1 && userAgent.indexOf("Safari") > -1; //判断Chrome浏览器  

  

      if (isIE)   

      {  

           var reIE = new RegExp("MSIE (\\d+\\.\\d+);");  

           reIE.test(userAgent);  

           var fIEVersion = parseFloat(RegExp["$1"]);  

           if(fIEVersion == 7)  

           { return "IE7";}  

           else if(fIEVersion == 8)  

           { return "IE8";}  

           else if(fIEVersion == 9)  

           { return "IE9";}  

           else if(fIEVersion == 10)  

           { return "IE10";}  

           else if(fIEVersion == 11)  

           { return "IE11";}  

           else  

           { return "0"}//IE版本过低  

       }//isIE end  

         

       if (isFF) {  return "FF";}  

       if (isOpera) {  return "Opera";}  

       if (isSafari) {  return "Safari";}  

       if (isChrome) { return "Chrome";}  

       if (isEdge) { return "Edge";}  

   }//myBrowser() end  

     

   //判断是否是IE浏览器  

   function isIE()  

   {  

      var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串  

      var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera; //判断是否IE浏览器  

      if(isIE)  

      {  

          return "1";  

      }  

      else  

      {  

          return "-1";  

      }  

   }  

     

     

   //判断是否是IE浏览器,包括Edge浏览器  

   function IEVersion()  

   {  

      var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串  

      var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera; //判断是否IE浏览器  

var isEdge = userAgent.indexOf("Windows NT 6.1; Trident/7.0;") > -1 && !isIE; //判断是否IE的Edge浏览器  

      if(isIE)  

      {  

           var reIE = new RegExp("MSIE (\\d+\\.\\d+);");  

           reIE.test(userAgent);  

           var fIEVersion = parseFloat(RegExp["$1"]);  

           if(fIEVersion == 7)  

           { return "IE7";}  

           else if(fIEVersion == 8)  

           { return "IE8";}  

           else if(fIEVersion == 9)  

           { return "IE9";}  

           else if(fIEVersion == 10)  

           { return "IE10";}  

           else if(fIEVersion == 11)  

           { return "IE11";}  

           else  

           { return "0"}//IE版本过低  

      }  

else if(isEdge)  

{  

    return "Edge";  

}  

      else  

      {  

          return "-1";//非IE  

      }  

   }  

以上代码通过测试,可用!

        但存在一个问题,即IE5与IE7浏览器暂不能区分,以下是IE5与IE7下userAgent的信息;通过userAgent发现,简单的通过以上方法,无法正确区分IE5和IE7。期待该问题的解决方案!!!

     IE5: userAgent   "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/7.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; InfoPath.2; .NET4.0E)"

     IE7: userAgent  "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/7.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; InfoPath.2; .NET4.0E)"

Atas ialah kandungan terperinci JS判断浏览器类型及版本实例详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk menyesuaikan simbol saiz semula melalui CSS dan menjadikannya seragam dengan warna latar belakang? Bagaimana untuk menyesuaikan simbol saiz semula melalui CSS dan menjadikannya seragam dengan warna latar belakang? Apr 05, 2025 pm 02:30 PM

Kaedah penyesuaian simbol saiz semula dalam CSS bersatu dengan warna latar belakang. Dalam perkembangan harian, kita sering menghadapi situasi di mana kita perlu menyesuaikan butiran antara muka pengguna, seperti menyesuaikan ...

Bagaimana cara memaparkan 'badan bulat jingnan mai' yang dipasang dengan betul di laman web? Bagaimana cara memaparkan 'badan bulat jingnan mai' yang dipasang dengan betul di laman web? Apr 05, 2025 pm 10:33 PM

Menggunakan fail font yang dipasang di laman web baru -baru ini, saya memuat turun fon percuma dari internet dan berjaya memasangnya ke dalam sistem saya. Sekarang ...

Bagaimana untuk mencapai kesan jurang pada susun atur kad dan kupon dengan latar belakang kecerunan? Bagaimana untuk mencapai kesan jurang pada susun atur kad dan kupon dengan latar belakang kecerunan? Apr 05, 2025 am 07:48 AM

Menyedari kesan jurang susun atur kupon kad. Semasa merancang susun atur kupon kad, anda sering menemui keperluan untuk menambah jurang pada kupon kad, terutamanya apabila latar belakang adalah gradien ...

Teks di bawah susun atur flex ditinggalkan tetapi bekas dibuka? Bagaimana menyelesaikannya? Teks di bawah susun atur flex ditinggalkan tetapi bekas dibuka? Bagaimana menyelesaikannya? Apr 05, 2025 pm 11:00 PM

Masalah pembukaan kontena kerana peninggalan teks yang berlebihan di bawah susun atur flex dan penyelesaian digunakan ...

Mengapa margin negatif tidak berkuatkuasa dalam beberapa kes? Bagaimana menyelesaikan masalah ini? Mengapa margin negatif tidak berkuatkuasa dalam beberapa kes? Bagaimana menyelesaikan masalah ini? Apr 05, 2025 pm 10:18 PM

Mengapa margin negatif tidak berkuatkuasa dalam beberapa kes? Semasa pengaturcaraan, margin negatif dalam CSS (negatif ...

Bagaimana untuk mendapatkan data aplikasi masa nyata dan data penonton di halaman kerja 58.com? Bagaimana untuk mendapatkan data aplikasi masa nyata dan data penonton di halaman kerja 58.com? Apr 05, 2025 am 08:06 AM

Bagaimana untuk mendapatkan data dinamik 58.com halaman kerja semasa merangkak? Semasa merangkak halaman kerja 58.com menggunakan alat crawler, anda mungkin menghadapi ...

Mengapa elemen Div tertentu dalam penyemak imbas tepi tidak dipaparkan? Bagaimana menyelesaikan masalah ini? Mengapa elemen Div tertentu dalam penyemak imbas tepi tidak dipaparkan? Bagaimana menyelesaikan masalah ini? Apr 05, 2025 pm 08:21 PM

Bagaimana menyelesaikan masalah paparan yang disebabkan oleh helaian gaya ejen pengguna? Apabila menggunakan penyemak imbas Edge, elemen Div dalam projek tidak dapat dipaparkan. Setelah memeriksa, saya menyiarkan ...

Bagaimana menggunakan CSS dan Flexbox untuk melaksanakan susun atur imej dan teks yang responsif pada saiz skrin yang berbeza? Bagaimana menggunakan CSS dan Flexbox untuk melaksanakan susun atur imej dan teks yang responsif pada saiz skrin yang berbeza? Apr 05, 2025 pm 06:06 PM

Melaksanakan susun atur responsif menggunakan CSS apabila kami ingin melaksanakan perubahan susun atur di bawah saiz skrin yang berbeza dalam reka bentuk web, CSS ...

See all articles