User Agent是Http协议中的一部分,属于头域的组成部分,User Agent也简称UA。通俗地讲,UA是一种向访问网站提供你所使用的浏览器类型、操作系统、浏览器内核等信息的标识。通过这个标识,用户所访问的网站可以显示不同的排版,从而为用户提供更好的体验或者进行信息统计。

    1. <script type="text/javascript">
    2. //判断访问终端
    3. var browser={
    4. versions:function(){
    5. var u = navigator.userAgent, app = navigator.appVersion;
    6. return {
    7. trident: u.indexOf('Trident') > -1, //IE内核
    8. presto: u.indexOf('Presto') > -1, //opera内核
    9. webKit: u.indexOf('AppleWebKit') > -1, //苹果、谷歌内核
    10. gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1,//火狐内核
    11. mobile: !!u.match(/AppleWebKit.*Mobile.*/), //是否为移动终端
    12. ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios终端
    13. android: u.indexOf('Android') > -1 || u.indexOf('Adr') > -1, //android终端
    14. iPhone: u.indexOf('iPhone') > -1 , //是否为iPhone或者QQHD浏览器
    15. iPad: u.indexOf('iPad') > -1, //是否iPad
    16. webApp: u.indexOf('Safari') == -1, //是否web应该程序,没有头部与底部
    17. weixin: u.indexOf('MicroMessenger') > -1, //是否微信 (2015-01-22新增)
    18. qq: u.match(/\sQQ/i) == " qq" //是否QQ
    19. };
    20. }(),
    21. language:(navigator.browserLanguage || navigator.language).toLowerCase()
    22. }
    23. </script>

    使用方法:

    1. //判断是否IE内核
    2. if(browser.versions.trident){ alert("is IE"); }
    3. //判断是否webKit内核
    4. if(browser.versions.webKit){ alert("is webKit"); }
    5. //判断是否移动端
    6. if(browser.versions.mobile||browser.versions.android||browser.versions.ios){ alert("移动端"); }

    判断是否为微信

    1. function is_weixin(){
    2. var ua = navigator.userAgent.toLowerCase();
    3. if(ua.match(/MicroMessenger/i)=="micromessenger") {
    4. return true;
    5. } else {
    6. return false;
    7. }
    8. }

    3个检测浏览器User-Agent信息的网站为: