ie

  1. var theUA = window.navigator.userAgent.toLowerCase();
  2. console.log(theUA);
  3. //ie
  4. if ((theUA.match(/msie\s\d+/) && theUA.match(/msie\s\d+/)[0])
  5. || (theUA.match(/trident\s?\d+/) && theUA.match(/trident\s?\d+/)[0])) {
  6. var ieVersion = theUA.match(/msie\s\d+/)[0].match(/\d+/)[0]
  7. || theUA.match(/trident\s?\d+/)[0];
  8. console.log(ieVersion);
  9. }


Android、iphone、ipad

  1. var n = navigator.userAgent.toLowerCase();
  2. if (n.indexOf('Android') > -1 || n.indexOf('Linux') > -1) {
  3.     console.log("安卓手机");
  4.   } else if (n.indexOf('iPhone') > -1) {
  5.     console.log("苹果手机");
  6.   } else if (n.indexOf('Windows Phone') > -1) {
  7.     console.log("winphone手机");
  8.   } else if (n.indexOf('Google Phone') > -1) {
  9.     console.log("谷歌手机");
  10.   }

浏览器

  1. var ua=navigator.userAgent.toLowerCase();
  2. if(/msie/i.test(ua) && !/opera/.test(ua)){
  3. alert("IE");
  4. return ;
  5. }else if(/firefox/i.test(ua)){
  6. alert("Firefox");
  7. return ;
  8. }else if(/chrome/i.test(ua) && /webkit/i.test(ua) && /mozilla/i.test(ua)){
  9. alert("Chrome");
  10. return ;
  11. }else if(/opera/i.test(ua)){
  12. alert("Opera");
  13. return ;
  14. }else if(/iPad/i){
  15. alert("ipad");
  16. return ;
  17. }
  18. if(/webkit/i.test(ua) &&!(/chrome/i.test(ua) && /webkit/i.test(ua) && /mozilla/i.test(ua))){
  19. alert("Safari");
  20. return ;
  21. }else{
  22. alert("unKnow");
  23. }

应用

有些软件是内置的浏览器,比如新浪微博、腾讯QQ(非QQ浏览器)和微信
(微信在6.0.2版本的时候做了改动,微信的分享功能在新版本跟以前不一样了)为了兼容版本,要做以下操作:
注:新浪微博为1,QQ客户端为2,微信低于6.0.2版本为3,高于6.0.2版本为4,其他为0。

  1. var ua = navigator.userAgent.toLowerCase();
  2. if(ua.match(/weibo/i) == "weibo"){
  3. console.log(1);
  4. }else if(ua.indexOf('qq/')!= -1){
  5. console.log(2);
  6. }else if(ua.match(/MicroMessenger/i)=="micromessenger"){
  7. var v_weixin = ua.split('micromessenger')[1];
  8. v_weixin = v_weixin.substring(1,6);
  9. v_weixin = v_weixin.split(' ')[0];
  10. if(v_weixin.split('.').length == 2){
  11. v_weixin = v_weixin + '.0';
  12. }
  13. if(v_weixin < '6.0.2'){
  14. console.log(3);
  15. }else{
  16. console.log(4);
  17. }
  18. }else{
  19. console.log(0);
  20. }