关于浏览器嗅探

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于浏览器嗅探相关的知识,希望对你有一定的参考价值。

 在前端开发中经常会遇到一系列兼容性问题,怎样精准地识别出各个浏览器的版本是一件很头痛的问题,尤其是navigator有可能被厂商伪造的情况。虽然大神们建议要针对浏览器特性来处理而不是通过浏览器版本,但是实际操作过程中却有相当大的困难。

  以下是大神们总结的各种浏览器嗅探的办法

IE篇:


ie=!!window.VBArray
ie678=!+"\v1";
ie678=!-[1,];
ie678=‘\v‘==‘v‘;
ie678=(‘a-b‘.split(/(~)/))[1]=="b"
ie678=0.9.toFixed(0)=="0"
ie678=/\w/.test(‘\u0130‘)
ie8=window.toStatichtml
ie9=window.msPerformance
ie678=0//@cc_on+1;
ie67=!"1"[0]
ie8=!!window.XDomainRequest;
ie9=document.documentMode&&document.documentMode===9;
ie10 = window.navigator.msPointerEnabled;
ie11 = !!window.MSInputMethodContext;


Firefox篇:


firefox=!!window.netscape;
firefox=!!window.updateCommands;
safari=window.openDatabase&&!window.chrome;
chrome=!!(window.chrome&&window.google);


移动设备篇:


iphone=/iphone/i.test(navigator.userAgent);
iphone4=window.devicePixelRatio>=2;
ipad=/iPad/i.test(navigator.userAgent);
android=/android/i.test(navigator.userAgent);
ios=iphone||ipad;

以上是关于关于浏览器嗅探的主要内容,如果未能解决你的问题,请参考以下文章

嗅探浏览器插件使用

如何让迅雷是视频嗅探功能在谷歌内核的浏览器上也能像在IE内核浏览器上一样的工作呀?

浏览器嗅探器(转)

浏览器嗅探器检测

在没有用户代理嗅探的情况下检测移动浏览器[关闭]

在没有用户代理嗅探的情况下检测移动浏览器[关闭]