你好!我的问题是:
我如何控制或指定文档如何滚动以到达所需位置,无论是通过鼠标滚轮还是拖动滚动条描述的。我想要的是克服页面默认的滚动方法。
目前的情况是,每次在滚动轮上进行单击时,页面会直接跳转到下方x像素的位置,或者直接跳转到您拖动滚动条的位置。
我正在寻找一种简单的扩展方式,可以应用特定的滚动规则。原则很简单。强制加速,这将防止页面过快移动而不会先加速。以px/sec为速率设置-并提供应用缓动函数的选项...页面最大px/sec可以滑动/移动/拖动。第三个是减速规则,在页面接近其目标位置(以%、px为单位)时应用。这可能必须通过多种方式计算,并且可能更加棘手。例如,在滚动最后25像素到达目标位置时,应用减速。还有更多...我想要准备的主要问题是确保完全支持小页面滚动而不会出现故障。
有哪些jQuery方法可以用来控制文档呢?
_kyle
更新: 感谢您关注这个问题。好消息。找到了一个很棒的插件,希望可以处理成支持所需效果,嘿!我实现了一个整个页面容器,并使用了这个巧妙的jScrollPane脚本来控制页面的滚动 http://jscrollpane.kelvinluck.com/fullpage_scroll.html
页面的性能已经有了很大的改善。每次从滚轮上单击时,滚动小步长仅相当于浏览器本机滚动小步长的三分之一到一半,因此移动速度较慢,这很好,肯定是可以调整的。
不过我们仍然有页面运动卡顿的问题。
我本人编写JavaScript,但更多的是重新编写。
我认为需要完成的是构建一个像素“队列”,以便在页面上滚动,总时间累加: 然后定义和执行一个动画轨迹分为三个阶段,一个缓入加速,最大滚动速度阶段和减速阶段。请问有什么建议可以
将鼠标滚轮从其原生功能中分离出来,使其不再滚动页面。
监听鼠标滚动的滑轮位置;并在出现滚轮位置变化时:初始化核心功能以开始移动页面,并将额外的滚动位置变化添加到“队列”中,重新计算并应用于窗口滚动替换先前的totaldistancetoscroll,然后计算下一个totaldistancetoscroll,这提供了一种方式来预测目的地并减速。核心功能不希望被重启,因为在加速时可能会发生多次滚轮位置变化,但只需应用重新计算何时何地减速即可。
很抱歉没有发布任何实际代码,不确定从哪里开始,希望有人知道mwintent是否适用于这个问题,如果是这样的话:也许还有一些想法如何应用减速到滚动中,这似乎是期望效果和类似的当前插件状态之间的唯一两种区别。