Jquery ScrollTo一直向下滚动太远

Jquery ScrollTo一直向下滚动太远,jquery,html,css,scrollto,Jquery,Html,Css,Scrollto,我有一个ul列表,我正试图使用最新版本的JQuery ScrollTo(1.4.11版)按列表中li的高度向下滚动(以创建垂直滑块)。 它正在上下滚动,几乎按预期工作。 但当再次向上滚动时,似乎总是将6px滚动到较低的位置,从而将其推离位置 该站点响应迅速,需要时,li将下降到下一行(一次最多显示4个li,将下降到3个等,并且仍然可以正确滚动)。 我曾尝试在函数中使用偏移量,但没有效果。 如果在li's上设置一个-6px的边距底部,它似乎在一定程度上修复了桌面浏览器(Firefox和opera仍

我有一个ul列表,我正试图使用最新版本的JQuery ScrollTo(1.4.11版)按列表中li的高度向下滚动(以创建垂直滑块)。
它正在上下滚动,几乎按预期工作。
但当再次向上滚动时,似乎总是将6px滚动到较低的位置,从而将其推离位置

该站点响应迅速,需要时,li将下降到下一行(一次最多显示4个li,将下降到3个等,并且仍然可以正确滚动)。
我曾尝试在函数中使用偏移量,但没有效果。
如果在li's上设置一个-6px的边距底部,它似乎在一定程度上修复了桌面浏览器(Firefox和opera仍然会滚动1px到far),但在所有手机和平板电脑上,li's behind的顶部开始显示在下面。
网站的其余部分使用HTML5和CSS3

我认为这与一个看不见的水平滚动条有关,是真的吗? 如果是这样的话,我该如何修复它

我的代码如下:

HTML

Javascript

var getHeight = $("ul li").height();
var scroll = function (scroll) {
    if (scroll == 'down') {
        scroll = '-=' + getHeight + 'px';
    }
    else if (scroll == 'up') {
        scroll = '+=' + getHeight + 'px';
    };
    $('ul').scrollTo(scroll, 300, { offset: -6 });
};
$('.widget-HomePagePortfolio span.prev').bind('click', function() {
    scroll('down');
});
$('.widget-HomePagePortfolio span.next').bind('click', function () {
    scroll('up');
});

任何帮助都将不胜感激,谢谢

我知道这已经晚了,但是如果有人遇到这个或类似的问题,我发现问题出在
  • 元素
    显示:内联块
    。这意味着项目总是有多余的间距。通过使用
    float:left
    这解决了问题。

    您希望对此进行哪些更改,并使滚动显示在下方:隐藏必须更改为溢出:自动/滚动我不希望滚动显示,我希望使用滚动功能来单击上一个和下一个按钮的事件。如前所述,我让它工作,上下滚动很好,但由于某些原因,它一直试图滚动6px,我更新了JSFIDLE
    ul { 
        height: 225px !important; 
        overflow: hidden; 
        max-width: 960px; 
        width: 95%; 
        margin: 0 auto; 
    }
    
    li { 
        display: inline-block; 
        margin: 0; 
        padding: 0; 
        width: 190px; 
        height: 225px !important; 
        overflow: hidden; 
    }
    
    var getHeight = $("ul li").height();
    var scroll = function (scroll) {
        if (scroll == 'down') {
            scroll = '-=' + getHeight + 'px';
        }
        else if (scroll == 'up') {
            scroll = '+=' + getHeight + 'px';
        };
        $('ul').scrollTo(scroll, 300, { offset: -6 });
    };
    $('.widget-HomePagePortfolio span.prev').bind('click', function() {
        scroll('down');
    });
    $('.widget-HomePagePortfolio span.next').bind('click', function () {
        scroll('up');
    });