这是jsfiddle中的演示,demo
我想要的是让滚动的项目(“一个”,“两个”,“三个”,“4”,“5”,“6”,“7”)自动向上滚动,就像演示所示,并停止当它处于中间位置时。
以下是我的演示代码中设置位置的位置。
if ((x == 0) || (x % 35== 0)) {
setTimeout(function () {
i.top = x + 'px';
}, 1000);
} else {
i.top = x + 'px';
}
我设置35的原因是因为我发现滚动的项目大约在等于0,-35,-70,-105的中间位置....但是当我控制所有x时,我发现x的值在(31,-251)之间。你知道如何在每件物品位于中间位置时找到准确的位置吗?谢谢!
答案 0 :(得分:1)
这是我找到的解决方案:jsfiddle
更改
1)在您的css中添加:
#myscroller p {
margin: 0;
line-height: 30px;
}
2)将第4行的变量i
的值更改为0
,否则无法在{4}中添加数组的第一个值{1}}代码
3)将第10行变量<p>
的值更改为txt
,空字符串
4)需要始终调用此''
,否则滚动条会在停止时延迟1px
5)由于您的行高为i.top = x + 'px';
,当30px
为真时,您的滚动条将停止
注意:如果您想更改行高,则其值必须与x % 30
高度相同,并且与您在{{1}处检查的值相同}