0

我有一个div里面的列表。div设置overflow:hidden为。旁边div我有一个小把手,用来控制滚动。

首先,我想知道是否可以根据手柄是向上还是向下滚动该列表。但我想在没有overflow:scroll、没有任何插件和没有 jQuery UI 的情况下做到这一点。

仅使用纯 JavaScript/Jquery。我没有在互联网上找到任何东西。那一定是可能的,对吧?

我不需要它来向上或向下滚动键。我不需要向上滚动,向下滚动按钮。只有一个小把手。我什至不需要它用鼠标滚轮滚动。

可能的?

4

1 回答 1

2

如果你想自己做,它会是这样的:

您定义了一些样式:

* { padding:0; margin:0; }
.container { padding:0 10px; margin:0; background-color:#444; width:400px; height:400px; overflow:hidden; }
.scrollable { background-color:#5a5; width:100%; height:800px; position:relative; top:0; }
p { margin:0 0 30px 0; }

然后是html:

<div class="container">
    <div class="scrollable">
        <p>Line 1</p>
        <p>Line 2</p>
        <p>Line 3</p>
        <p>Line 4</p>
        <p>Line 5</p>
        ...
    </div>
</div>

您可以使用 Jquery 更改元素的“顶部”位置:

function scroll(target, x)
{
    $(target).animate({ top: x, duration: 2000});
}

您可以从鼠标滚动、正在移动的处理程序或其他一些事件中调用这样的函数:

scroll(".scrollable", "50%");

但是,正如其他人指出的那样,根据您的要求,使用现有的库可能会更好。

于 2012-10-11T23:13:43.063 回答