【发布时间】:2013-11-15 15:47:39
【问题描述】:
我有一个容器,里面有多个<div>s,代表页面。当用户滚动浏览这些页面时,我想更新当前的页码标签。为此,我发现我可以使用 :in-viewport 选择器。我尝试关注这个example,并想出了这个jsFiddle:
这似乎可行,但我确实有一个小问题。那就是当我向下滚动时,我当前的页码不会更改为“2”,直到第二个“图像”元素部分隐藏(在顶部),并且第 3 页部分可见。我希望它尽快更改为 2。请参阅此屏幕截图以了解我的意思,这是它变为“2”的时候:
理想情况下,只要第二个“图像”元素是占多数的元素,我希望当前页码更改为“2”。例如,这是关于我希望当前页码更改为“2”的位置:
http://imgur.com/uKZRD4m(注意#2 是大多数人的看法)
随着我不断滚动,它似乎变得更糟了。在下一个屏幕截图中,当前页码仍然显示为 5,但第 5 幅图像根本看不到了!
我有什么不同的方法可以达到这个效果吗?现在我只是将in:viewport 选择器与:first 选择器结合使用:
$('.item:in-viewport:first')
【问题讨论】:
标签: javascript jquery scroll viewport