gpt4 book ai didi

jquery - Twitter bootstrap 附加无限滚动和 window.resize

转载 作者:行者123 更新时间:2023-12-03 21:46:39 25 4
gpt4 key购买 nike

通过阅读一些与此相关的问题,我意识到 twitter bootstrap affix 组件根本没有可用的 $.affix('refresh') 方法 - 我的问题虽然相关,但可能甚至只是刷新之间的一个额外步骤,让我尝试解释一下。

我有一个带有标准 Bootstrap 导航栏的页面。在其下面,我将附加一个子导航,一旦用户滚动经过 x 像素,该子导航就会“固定”(在我的例子中,导航栏的高度为 41px,因此在 41px 时,附加将启动,并将 .affix 类更改为 .affix {top:41px} 一切都很好)

因此,对于第一个词缀,我可以使用仅限 html 的属性。

在页面的更下方(本质上可以被认为是“第二页”),我有另一 block 导航,一旦用户滚动到某个位置,它应该“附加”并替换第一个子导航 - 考虑到该位置由于内容不同,第二页/词缀的高度是可变的,我使用js计算第一页的高度,并根据我得到的内容设置offset: {top:xxx}

这也很有效/正如预期的那样,用户向下滚动一点,第一个子导航词缀就会启动,如果他继续滚动并到达页面下方的第二个子导航,它就会启动并替换第一个词缀'ed sub-nav(它实际上并没有取代它本身,而是用更高的 z-index 覆盖)

从这里开始,我有两个问题无法找到解决方案:

  1. 当用户重新调整窗口大小时,第一页的内容当然会变长,这会改变我在页面下方添加的原始偏移顶部尺寸。首先,我认为对 .affix('refresh') 的简单调用将/可能是解决方案,但当然该方法甚至在组件上不可用。接下来,我想我可以再次手动重新计算高度并重新创建 $('.my-second-affix').affix({offset: {top:x-new-offset}}); - 但由于某种原因,这似乎根本不起作用,我不明白为什么:(

  2. 接下来要解决的问题是我还使用 jqueryInfinitescroll 加载越来越多的页面...每个页面可能在不同阶段有其他子导航,我想附加和替换这些子导航最后一个词缀现在位于顶部。

注意 然后,我还想确保,如果用户向后滚动到另一个方向,则先前附加的子导航会向后重新附加自身(我怀疑它们会很好)只要词缀偏移正确)

希望这个解释足以突出我的问题,并且有人以前处理过这个问题或者可以提供一些解决方案的指导。我试图让偏移量成为一个函数,它也返回距顶部的当前偏移量(如另一个问题 Twitter bootstrap change affix offset 中提到的),但由于某种原因,它也不能按预期工作。

非常感谢任何帮助

最佳答案

您尝试过$('#myAffix').affix('checkPosition')吗?这在Bootstrap3.0中可用

关于jquery - Twitter bootstrap 附加无限滚动和 window.resize,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14127316/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com