在jQuery中检测Internet Explorer 6或更低版本
我是新来jquery,想知道:是一个简单的方法来检测是否浏览器是Internet Explorer 6或以下?
像这样简单:
if($.browser.msie && $.browser.version=="6.0") alert("Im the annoying IE6");
更新
请注意, $ .browser 已从jQuery 1.9中移除
如果你仍然需要在jQuery 1.9(或其他不推荐使用的函数)中使用$ .browser, -migrate-1.2.1.js )
你也可以直接问IE。
<!--[if lte IE 6]> <script type="text/javascript"> var isRunningIE6OrBelow = true; </script> <![endif]-->
jQuery检查function,而不是“浏览器”。 也就是说,您可以使用jQuery.support方法来检测用户浏览器的能力。
弃用的方法(不要使用)
- $ .browser
- $ .browser.version
- $ .boxModel
http://docs.jquery.com/Utilities/jQuery.support将为您提供哪些浏览器支持哪些function的摘要。; 获取这些数据,您将开发一对条件检查来确定所使用的浏览器是否是您的目标浏览器。
if ($.browser.msie && parseInt($.browser.version, 10) <= 6) { alert("I'm not dead yet!"); }
– 更新
请不要将$ .browser 从jQuery 1.9中移除
很好的方式来检测IE是:
if ('v'=='\v') { welcome to IE )) }
不幸的是,它不能识别它的版本,但它并不总是秘密。
如果ActiveXObject
存在,并且XMLHttpRequest
不存在,则是IE6:
/* IE6 Check */ (!!window.ActiveXObject && !window.XMLHttpRequest) ? true : false;
在IE7中,这将是:
(!!window.ActiveXObject && !!window.XMLHttpRequest) ? true: false;
参考
- JavaScriptKit:AJAX
另外,还有一个好处就是使用JQuery,你不应该担心版本。
如果您使用jquery来修复IE6的css渲染错误,这并没有什么帮助。
我经常检查浏览器的版本。 .support方法非常好,但是当你需要隐藏select的时候,它并没有什么帮助。 没有“支持select窗口控件”。 你只需要检查浏览器版本,所以我会说你可以在.support方法错误,并在必要时使用.browser。
只是让人们知道$ .browser.msie && /6.0/.test(navigator.userAgent)是不可靠的,我来这个问题寻找一个问题的答案,因为我的机器上的JQuery bgiframe打破了,因为我在我的navigator.userAgentstring中有“Media Center PC 6.0”。 我现在编辑源使用$ browser.versiontesting。
它的愚蠢的JQuery去反对这些浏览器testing,因为他们可能是丑陋的,他们是必要的,以应付浏览器生态系统的丑陋状态。
我总是使用这个解决scheme
http://sinfinity.pl/blog/2012/02/12/detect-internet-explorer-and-browser-version-in-jquery/
试试这个:
jQuery.each(jQuery.browser, function(i, val) { $("<div>" + i + " : <span>" + val + "</span>") .appendTo(document.body); });
如果你需要更多的信息请参考这个:
“虽然jQuery.browser不太可能被删除,但是应该尽可能使用jQuery.support和正确的function检测。”
所以我说,继续使用它。 他们必须保持与仍然使用用户代理嗅探方法的脚本的向后兼容性。
http://docs.jquery.com/Utilities/jQuery.browser.version是如何;
编辑:更正道格拉斯的链接
http://api.jquery.com/jQuery.browser/#jQuery.browser.version
我的意思是,如果你的旧版本不是最新的1.3 …
另外,还有一个好处就是使用JQuery,你不应该担心版本。 JQuery的functiontesting,并为您处理所有malarky。 担心版本和平台是可爱的1999年