1

我刚刚发现我的脚本在 Chrome 中运行良好,但在 FireFox 中却没有——我不知道为什么。

这是正在开发的网站:www.fireflycovers.com

当单击绿色圆形按钮之一时,脚本应执行。(将窗口滚动到下一个容器)

脚本现在看起来像这样:

$('.scroll').css('display' , 'block');
$('.scroll').on('click', function(e) {
    var container = $(this).parent();

    // Scans if last container in group
    while (document != container[0] && 
           container.find('~.col, ~:has(.col)').length == 0) {

           // If so, search siblings of parent instead
           var container = container.parent(),
               nextdiv = container.nextAll('.col, :has(.col)').first();
    }

    // Back to first .col (when no next .col)
    if (nextdiv.length == 0) {
        nextdiv = $(document).find('.col:first')
    };

    // Animates scrolling to new position
    $('body').animate({scrollTop:nextdiv.offset().top}, 1000);  
        return false;
    });
});
4

1 回答 1

0

您是否尝试过调试?例如,在您的方法中放置console.log语句以查看事物在特定时间的值并观察它的执行?无论如何,使用这个有帮助吗?

$('body,html').animate({scrollTop:nextdiv.offset().top}, 1000);

Animate scrollTop 验证在 firefox 中不工作

您需要html,因为 Firefox 在overflow.

于 2012-11-29T01:32:57.407 回答