禁用默认箭头键滚动行为以删除jQuery.scrollTo()抖动
我正在尝试使用禁用默认箭头键滚动行为以删除jQuery.scrollTo()抖动,jquery,jquery-plugins,scrollto,smooth-scrolling,Jquery,Jquery Plugins,Scrollto,Smooth Scrolling,我正在尝试使用jQuery插件.scrollTo(),以便使用箭头键平滑地滚动到网页的特定药剂。 也就是说,当按下向下键时,浏览器将平滑地滚动到div列表中的下一个div。但是,由于在web浏览器中箭头键通常与滚动功能绑定,当按下箭头键触发.scrollTo()功能时,会产生一种抖动效果 当按下箭头键时,浏览器首先很快尝试正常滚动而不平滑,然后很快开始通过scrollTo()功能平滑滚动 我通常会设想,为了防止出现任何滚动,可以在jQuery中简单地为keydown事件返回false,但这也可以
jQuery
插件.scrollTo()
,以便使用箭头键平滑地滚动到网页的特定药剂。
也就是说,当按下向下键时,浏览器将平滑地滚动到div
列表中的下一个div
。但是,由于在web浏览器中箭头键通常与滚动功能绑定,当按下箭头键触发.scrollTo()
功能时,会产生一种抖动效果
当按下箭头键时,浏览器首先很快尝试正常滚动而不平滑,然后很快开始通过scrollTo()
功能平滑滚动
我通常会设想,为了防止出现任何滚动,可以在jQuery
中简单地为keydown事件返回false
,但这也可以防止按下箭头键触发.scrollTo()
是否有一种简单的方法来禁用浏览器中由deafult箭头键触发的滚动行为,以允许箭头键仅触发
.scrollTo()
事件?在触发.scrollTo()之前添加.preventDefault()
通过阻止通常由箭头键触发的默认滚动行为,修复了该问题