-->

JavaScript的滚动到元素jQuery中绑定的keydown事件(JavaScript scr

2019-10-17 08:05发布

我试图滚动到一个keydown事件2个不同的元素,在第一次按第1个要素,在第二次按下第二个元素,每2台压力机(或点击)后重复的事件。 我创建了一个演示的jsfiddle,链接如下。

小提琴

正如你所看到的,它不会滚动到第二按下底部构件(或打)。 我能想到的是使用的东西,除了其他的唯一的事情“.offset()。顶”的第二个事件。 但是,如果你们中的一些JS大师看看我的代码,你可能会看到错误或也许是预期的效果另一种解决方案。 提前致谢!

.offset().top ???

主要BUG解决了,但新的bug透露。是有办法的命中变量重置为零,如果用户点击向上箭头?

NO MORE BUGS! 随意使用这个脚本所有你想要的!

Answer 1:

见的定义偏移

获取匹配的元素,相对于文档的第一个元素的当前坐标。

这里的问题是,当你的动画元素#wrap,其偏移修改的最简单的解决方法是事先得到它的位置,看到我的编辑的jsfiddle 。 添加的代码下面的两行,并且根据spot1 / spot2做动画。 开关的情况下执行的罚款。

var spot1 = $("#scrollToHere2").position().top;
var spot2 = $("#scrollToHere").position().top;


文章来源: JavaScript scroll to element on binded keydown events in jQuery