IE只有JQuery脚本没有启动

时间:2013-06-07 16:32:53

标签: jquery internet-explorer conditional-comments

我有以下脚本:

<!--[if IE]>
    <script type="text/javascript">
    $(document).ready(function () {
    alert("ie");
    $('#usa').mapster({
        fillOpacity: 0.1,
        render_highlight: {
            fillColor: '2aff00',
            stroke: false,
            altImage: 'theImages/skillsets.png'
        },
        render_select: {
            fillColor: 'ff000c',
            stroke: false,
            altImage: 'theImages/skillsets.png'
        },
        fadeInterval: 50
    });
    });
    </script>
    <![endif]-->
    <script>
    $(document).ready(function () {
    $('#usa').mapster({
        fillOpacity: 0.1,
        render_highlight: {
            fillColor: '2aff00',
            stroke: false,
            altImage: 'theImages/skillsets.png'
        },
        render_select: {
            fillColor: 'ff000c',
            stroke: false,
            altImage: 'theImages/skillsets.png'
        },
        fadeInterval: 50
    });
    });
    </script>

如果浏览器不是IE,则第二个脚本应该启动,但如果它是IE,则第一个脚本应该启动。虽然我看到警告声明已激活,但其余的脚本正在使用第二个javascript。

唯一的问题是因为,

  

fillOpacity:0.1

我希望它在IE中为0.1,在其他浏览器中为0.9。

1 个答案:

答案 0 :(得分:2)

看起来您仍然在IE代码之后触发基本代码。如果你想改变的只是不透明度,那么就这样做:

<script type="text/javascript">
opacity = 0.9;
</script>
<!--[if IE]>
<script type="text/javascript">
opacity =  0.1;
</script>
<![endif]-->

<script>
    $(document).ready(function () {
    $('#usa').mapster({
        fillOpacity: opacity,
        render_highlight: {
            fillColor: '2aff00',
            stroke: false,
            altImage: 'theImages/skillsets.png'
        },
        render_select: {
            fillColor: 'ff000c',
            stroke: false,
            altImage: 'theImages/skillsets.png'
        },
        fadeInterval: 50
    });
    });
    </script>