花这么多时间试图解决这个问题,但这里有:
要求:
- 项目的垂直列表,在 div 容器中,结构 div/ul/li
- 用户应该能够滚动列表,通过将鼠标悬停在 div 上进行平滑滚动,向顶部和底部加速滚动
- 向两端滚动是无限的(即在列表的末尾,列表再次开始,而不是改变方向)
- 列表是通过js动态生成的
- 单击时选定的项目移动到中心,鼠标移出时,离中心最近的项目移动到中心
- 列表项没有固定高度
在放弃滚动我自己的解决方案之后......我尝试了 jcarousel,它可以被说服做所有这些事情,除了平滑滚动。此外,当单击列表末尾附近的项目 [使用 scroll()] 并且当前项目是第一项时,列表会一直向后滚动到最后,而不是仅仅滚动到下一个项目。
接下来是 jquery.serialscroll。一切正常,除了无休止的滚动,或者更确切地说,可以使底部无休止地滚动(通过相对 ul 中列表项的绝对定位),但我不知道如何滚动到顶部。
在滚动时,可以假设没有添加新项目。
没有平滑和可变/不可预测的滚动速度的要求,这些问题似乎并不难解决,但所有结合起来我似乎无法找到解决方案。
有没有我错过的 jquery 插件,或者有人使用 serialscroll 或 jcarousel 让它工作?
希望这是足够的信息,并且翻译不会丢失太多。
提前欢呼和感谢