滚动捕捉到水平和垂直网格 - Jerky scollLeft

时间:2012-10-20 13:27:43

标签: jquery grid scrolltop

我的目标是创建一个网格,当用户垂直或水平滚动时,该网格始终会捕捉到浏览器的顶部和左侧边缘。我有基本版本,但scollLeft部分与scrollTop动画相比总是非常生涩。

如果有人想到更好的解决方案,我会非常感激,它正在慢慢地让我疯狂!

到目前为止,这是它的骨头http://jsfiddle.net/stuart09876/vXvBV/1/

这是剧本......

$(function(){
    var windowtest = $(window);
    var _top = $(windowtest).scrollTop();
    var _left = $(windowtest).scrollLeft();
    var individualDivHeight = 140;
    var individualDivWidth = 220;

    $(windowtest).scroll(function(){
        var _cur_top = $(windowtest).scrollTop();
        var _cur_left = $(windowtest).scrollLeft();
        var totalHeight = $('#container').height();
        var totalWidth = $('#container').width();
        var posToScroll = Math.round(_cur_top / individualDivHeight) * individualDivHeight;
        var posToScrollLeft = Math.round(_cur_left / individualDivWidth) * individualDivWidth;

        $('html, body').stop().animate({scrollTop: posToScroll}, 100,
            function(){
                $('html, body').stop().animate({scrollLeft: posToScrollLeft}, 100);    
            }
        );              
    });
});

非常感谢

斯图尔特

0 个答案:

没有答案