刚刚偶然发现一个问题。当尝试使用 Jquery 检测 IE 11(目前正在播出的 beta 版本)时,结果是“firefox”。相同的代码检测 IE 10。我需要知道用户正在使用什么浏览器才能显示不同的指令。
如果重要,我正在 Oracle VirtualBox 中进行测试。操作系统是Win 7。
这是代码:
<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.2.1.min.js"></script>
<script>
var browser = function() {
if ($.browser.msie) return "ie";
var ua = navigator.userAgent.toLowerCase();
if ($.browser.mozilla/* && /firefox/.test(ua)*/) return "firefox";
if (/chrome/.test(ua)) return "chrome";
return /*"#"*/'unknown';
} ();
alert (browser); // This return firefox
alert ($.browser.version); // This returns 11.0 - the CORRECT version of IE
</script>
如您所见,Jquery 可以找到浏览器版本,但不能找到浏览器名称。知道如何绕过它吗?