react-component / scroll-anim

Animate Scroll React Component
http://react-component.github.io/scroll-anim/
MIT License
305 stars 43 forks source link

Link and OverPack同时使用会有scrollTo定位不一致情况 #38

Closed Nemo-G closed 5 years ago

Nemo-G commented 5 years ago
  1. 设置了新的scrollContainer(有targetId)不知道是否存在影响

  2. 设置了TweenOne的一个fadeIn animation 有一个Y方向的200px fadeIn/Out animation

  3. 行为是,当Link to的OverPack在当前view下方时触发Link正常,而在当前view在OverPack下方是,会多出一部分滚动距离,两种情况下操作滚动到的位置不一致

jljsj33 commented 5 years ago

这个问题一直都存在,暂时找不到好的解决办法,,

原因是:使用了 overPack 后,在点击时获取是当前元素的位置,但在滚动的过程中,在你定位上面的几个区块全都显示了,高度发生变化,但点击时的值没有改变,,所以会出现你所描述的问题。。。

目前唯一的解决方案是将每个区块的 min-height 设为当前区块的最大高度。。。

Nemo-G commented 5 years ago

谢谢解答! 补充一下我遇到的情况。这边因为design是responsive的,当前Element的高度会动态变化,而且实际还混合了debounce实现的LazyLoad的HOC,LazyLoad跟OverPack层次关系是:有些在OverPack外有些在OverPack内。。目前直接用anchor了,给OverPack跟LazyLoad placeholder设定了同样的id,但是问题仍然没有很完美解决。。

jljsj33 commented 5 years ago

anchor 和 scrollLink 实现的性质是一样的,都是先取位置再滚动,滚动过程中高度发生变化是没有办法的。