禁用默认箭头键滚动行为删除jQuery.scrollTo()抖动

时间:2012-06-22 00:47:47

标签: jquery jquery-plugins scrollto smooth-scrolling

我正在尝试使用jQuery插件.scrollTo(),以便使用箭头键顺利滚动到网页的特定部分。 即按下按钮后,浏览器将平滑滚动到div列表中的下一个divs。但是,由于箭头键通常绑定到Web浏览器中的滚动功能,因此当按下箭头键以触发.scrollTo()功能时会产生抖动效果

当按下箭头键时,浏览器会很快尝试正常滚动而不进行平滑处理,然后很快就开始通过scrollTo()功能顺利滚动。

我通常会想象return false中的keydown事件只能jQuery,以防止任何滚动发生,但这会阻止.scrollTo()被触发按箭头按键。

是否有简单的方法来禁用浏览器中的deafult箭头键触发滚动行为,以便允许箭头键仅触发.scrollTo()个事件?

1 个答案:

答案 0 :(得分:0)

在触发.preventDefault()之前添加.scrollTo()可以通过阻止通常由箭头键触发的默认滚动行为来解决问题。