我不仅需要检测浏览器类型,还需要使用 jQuery 检测版本。大多数情况下,我需要确定它是否是 IE 8。
我不确定我是否做对了。
如果我做 :
if (jQuery.browser.version >= 8.0) {
dosomething}
我不确定它是否适用于 8.123.45.6 版?
编辑:请注意,JQuery 2+ 已放弃对 IE8 及更低版本的支持,因此不能再用于检测 IE8。如果使用当前版本的 JQuery,则必须使用非 JQuery 解决方案。
我不仅需要检测浏览器类型,还需要使用 jQuery 检测版本。大多数情况下,我需要确定它是否是 IE 8。
我不确定我是否做对了。
如果我做 :
if (jQuery.browser.version >= 8.0) {
dosomething}
我不确定它是否适用于 8.123.45.6 版?
编辑:请注意,JQuery 2+ 已放弃对 IE8 及更低版本的支持,因此不能再用于检测 IE8。如果使用当前版本的 JQuery,则必须使用非 JQuery 解决方案。
我认为最好的方法是这样的:
来自 HTML5 样板:
<!--[if lt IE 7]> <html lang="en-us" class="no-js ie6 oldie"> <![endif]-->
<!--[if IE 7]> <html lang="en-us" class="no-js ie7 oldie"> <![endif]-->
<!--[if IE 8]> <html lang="en-us" class="no-js ie8 oldie"> <![endif]-->
<!--[if gt IE 8]><!--> <html lang="en-us" class="no-js"> <!--<![endif]-->
在JS中:
if( $("html").hasClass("ie8") ) { /* do your things */ };
尤其是因为$.browser它已从 jQuery 1.9+ 中删除。
这应该适用于所有 IE8 次要版本
if ($.browser.msie && parseInt($.browser.version, 10) === 8) {
alert('IE8');
} else {
alert('Non IE8');
}
- 更新
它记录在jQuery API 文档中。使用 来检查 Internet Explorer,$.browser.msie然后使用 来检查其版本$.browser.version。
更新: $.browser 在 jQuery 1.9 中删除
jQuery.browser() 方法自 jQuery 1.3 起已被弃用,并在 1.9 中删除。如果需要,它可以作为 jQuery Migrate 插件的一部分使用。我们建议将特征检测与 Modernizr 等库结合使用。
不要忘记,您还可以使用 HTML 来检测 IE8。
<!--[if IE 8]>
<script type="text/javascript">
ie = 8;
</script>
<![endif]-->
在你所有的脚本之前拥有它会让你只检查“ie”变量或其他任何东西。
如果浏览器不是 IE8,则document.documentMode未定义,
它为标准模式返回 8,为“与 IE7 兼容”返回 7
如果它作为 IE7 运行,则有很多 css 和 dom 功能将不受支持。