调整大小动画jQuery IE8非常慢

时间:2014-02-28 23:37:47

标签: jquery internet-explorer-8

这个动画在所有浏览器中都可以正常工作,但即使我使用stop()或检查动画是否正在运行,IE8在首次加载时速度极慢。如果我删除调整大小,它运行正常。

http://jsfiddle.net/uBWz8/7/

全屏视图 http://jsfiddle.net/uBWz8/7/embedded/result/

$(window).ready(function () {
    var findImg = $('.first').find('img');
    var firstImg = $("<img />").attr("src", findImg.attr('src') + "?" + new Date().getTime());

    $(firstImg).load(function () {

        var activeHeight = $('.slide').find('div').height();
        $('.first').stop().animate({
            opacity: 1,
            height: activeHeight
        }, 500);
    });

    $('.slide').each(function (index, element) {

        var h = $(this).find('div').height();

        $(this).css('height', h);

    });

});



$(window).resize(function () {

    var activeHeight = $('.slide').find('div').height();

    $('.first').stop().animate({
        height: activeHeight
    }, 500);

    $('.slide').each(function (index, element) {

        var h = $(this).find('div').height();

        $(this).css('height', h);

    });

});

感谢任何帮助。谢谢!

1 个答案:

答案 0 :(得分:1)

我猜你所遇到的问题与调整大小事件有关的频率高于你想象的。基本上每当动画开始时它立即触发resize事件,重新启动动画。这会导致动画缓慢发生或根本不发生!

有关调整大小问题的详细信息,请参阅此处:window.resize event firing in Internet Explorer

祝你好运!