繁体   English   中英

Iscroll - Jquery - 获取列表项的位置

[英]Iscroll - Jquery - Get position on a list item

我遇到的错误如下:

在我的页面右侧,我有一个有趣的点列表(显示在页面左侧的地图上)。 因为列表太长了,我使用的是iScroll 4(很棒的插件)。

但是,我想要做的是在用户滚动列表时触发事件,这样我就可以检查用户当前可以看到哪些项目。 iScroll已经设置了一个事件,所以我有一个在需要时触发的功能。 但是,我似乎无法获得列表项的正确坐标。

会发生什么是以下情况:

  1. 加载列表时,我得到第一个元素的.offset()值。 offset.top = 35,因为我的列表比页面的上边缘低35px。 这很好。
  2. 当我滚动列表时; 说我拉下500px; 我希望新位置为35px - 500px = -465px。 但是,它会说35。尽管列表已经移动,但滚动虽然列表不会影响元素坐标。

我怎样才能获得实际坐标?

玩iScroll,我想我找到了解决方案。 offset()函数是javascript,引用#scroller div,它不会改变。 但在内部,iScroll使用自己的x和y属性。

所以你可以像这样参考iScroll偏移量

var myScroll = new iScroll(...)
alert(myScroll.y)  // -- will return your offset (negative number)

添加iscroll.js

getScrollY: function () { var that = this; return that.y; }, 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM