一行IE特定的javascript

Ale*_*xis 4 javascript internet-explorer

有没有办法只有一行IE特定的JavaScript.

<script>
    <!--[if gte IE 7]><!-->SOME IE JS<![endif]-->
    <!--[else]><!-->NORMAL JS<![endif]-->
</script>
Run Code Online (Sandbox Code Playgroud)

Jam*_*ill 6

选项1

与原始问题中的代码类似,但条件位于正确的位置 - 在脚本块之外:

<!--[if lt IE 7]>
    <script type="text/javascript">
        //Your one line of code
    </script>
<![endif]-->

<script type="text/javascript">
    //All other script
</script>
Run Code Online (Sandbox Code Playgroud)

选项2

使用浏览器检测来检查浏览器和版本.我推荐http://www.quirksmode.org/js/detect.html.如果您使用链接中找到的.js文件,您可以这样:

<script type="text/javascript">
    if(BrowserDetect.browser == "Explorer" && BrowserDetect.version == 7) {
        //IE 7
    }
    else {
        //All others
    }
</script>
Run Code Online (Sandbox Code Playgroud)


a s*_*ude 5

您可以在<! - [if ...中定义一个全局变量,然后稍后再检查它.

<!--[if lt IE 7]>
<script type="text/javascript">
    old_ie = true;
</script>
<![endif]-->
Run Code Online (Sandbox Code Playgroud)

...

if (old_ie)
    //whatever you need to do
Run Code Online (Sandbox Code Playgroud)