如何使用javascript或jquery检测IE7并向div添加一个类

时间:2010-09-08 17:02:44

标签: javascript jquery internet-explorer-7

有没有办法检测IE7?

我在IE8中的代码没有任何问题,但我的IE7有问题。

所以我认为当IE浏览器通过javascript检测到它时,我可以使用jquery添加一个类。

我想从

改变
<div id="system">

<div id="system" class="ie7">

提前致谢。

7 个答案:

答案 0 :(得分:50)

如果您真的想通过使用javascript来解决这个问题,您可能需要检查这样的版本:

if (navigator.appVersion.indexOf("MSIE 7.") != -1)
    $('#system').addClass('ie7');

答案 1 :(得分:10)

您可以使用IE条件注释通过javascript添加类,如下所示:

<!--[if IE 7]>
<script type="text/javascript">
$(document).ready(function() {
    $('#system').addClass('ie7');
});
</script>
<![endif]-->

答案 2 :(得分:9)

您只能使用HTML执行此操作:

<强> CSS

.ie7{
   padding: 0;
   color: red;
}

<强> HTML

<!--[if IE 7 ]> <div id="system" class="ie7"> <![endif]-->
<!--[if (gt IE 7)|!(IE)]><!--> <div id="system"> <!--<![endif]-->
</div>

如果在Internet Explorer 7中执行,则会创建具有类div的{​​{1}}。所有其他浏览器和IE&gt; 7只会创建没有类的div。

答案 3 :(得分:9)

要检测ie7只需使用

if($.browser.msie && parseFloat($.browser.version) < 8){
    //do other stuff
    return;
}

用它做你想做的事情:

if($.browser.msie && parseFloat($.browser.version) < 8){
    $('#system').addClass('ie7');
}

答案 4 :(得分:3)

试试这个:

<!--[if IE 7]>
<script type="text/javascript">
  $('#system').addClass('ie7');
</script>
<![endif]-->

答案 5 :(得分:0)

答案 6 :(得分:0)

请注意,IE8 compat视图也会<!--[if IE 7 ]>为真

因此,如果您不希望在IE8 Compat视图中反映更改,则应对文档模式进行二级测试。

<!--[if IE 7]>
    <script type="text/javascript"> 
   try
    {
    if(document.documentMode!=8){
     //Your code comes here
    }
    }
    catch(exception){
    }
   </script>
<!--<![endif]-->