6

如果浏览器低于 IE9,我想在 jQuery 中执行某些代码。是的,我已经知道了

<!--[if ... IE ]> <![endif]-->

但我想要的是在 scipt 标记和 jQuery document.ready 中检查这个条件

<script>
    $(document).ready(function(){
        //code to check if lt ie9 
    });
</script>
4

2 回答 2

14

<html>您可以通过元素上的类来定位较旧的 Internet Explorer 版本(<= 9) ...

<!--[if lt IE 7]>  <html class="ie ie6 lte9 lte8 lte7"> <![endif]-->
<!--[if IE 7]>     <html class="ie ie7 lte9 lte8 lte7"> <![endif]-->
<!--[if IE 8]>     <html class="ie ie8 lte9 lte8"> <![endif]-->
<!--[if IE 9]>     <html class="ie ie9 lte9"> <![endif]-->
<!--[if gt IE 9]>  <html> <![endif]-->
<!--[if !IE]><!--> <html>             <!--<![endif]-->

...然后检查是否<html>有该类.lt9.lt8您所针对的 Internet Explorer 的任何版本:

if($('html').hasClass('lte9')) { /* LTE IE9 */ }

但是,我建议使用Modernizr功能检测而不是检查特定浏览器。

于 2013-08-09T11:46:06.003 回答
2

使用特征检测而不是浏览器检测。即http://modernizr.com/

于 2013-08-09T11:51:14.090 回答