悬停时不透明度的动画更改在Internet Explorer中不起作用

时间:2012-10-15 11:17:25

标签: javascript jquery hover jquery-animate opacity

我想简单地在滑块内缓慢更改每个项目的不透明度,除了我正在悬停的那个。它在Chrome中工作得很完美,但在Internet Explorer 8和7中都没有工作。

这是html代码:

        <div id="carousel-image-and-text" class="touchcarousel carousel-image-and-text clearfix" style="overflow: visible; ">
            <div class="touchcarousel-wrapper grab-cursor">
                <ul id="weekly-promos" class="touchcarousel-container" style="width: 1420px; left: 0px; ">
                    <asp:Repeater ID="RList" runat="server">
                        <ItemTemplate>
                            <li class="touchcarousel-item">
                                <a class="item-block" href="Article.aspx?PageID=<%# Eval("PageID") %>" rel="tooltip-<%# Eval("PageID") %>">
                                <figure><img src="<%# SetConf(Eval("PageID").ToString(),false) %><%# Eval("VisualSource") %>"></figure>
                                </a>
                            </li>
                        </ItemTemplate>
                    </asp:Repeater>
                </ul>
            </div>

这里是javascript部分:

 $(".carousel-slider a img").hover(function () {
            $(".carousel-slider img").not(this).stop().animate({ opacity: '0.4', filter: 'alpha(opacity=40)' }, 1000);

        }, function () {
            $(".carousel-slider img").not(this).stop().animate({ opacity: '1.0', filter: 'alpha(opacity=100)' }, 1000);
        });

1 个答案:

答案 0 :(得分:1)

不要使用过滤器,只是不透明度:

$(".carousel-slider a img").hover(function () {
  $(".carousel-slider img").not(this).stop().animate({ opacity: 0.4 }, 500);
}, function () {
  $(".carousel-slider img").not(this).stop().animate({ opacity: 1.0 }, 500);
});