首页 > 解决方案 > JScroll:在 ajax 更改选项卡和 URI 后更改 nextHref

问题描述

JScroll 看不到 javascript 何时更改了窗口历史记录pushState

我为索引页面上的帖子添加了 JScroll。例如,默认 URL 是localhost。并且当之后没有路径时,将加载默认帖子,并且 jscroll 将按应有的方式工作。

但是我在索引页面上有标签(新的、顶部的、热门的),它们改变了帖子的顺序。因此,当我单击一个选项卡时,它会使用 动态更改 URL window.history.pushState,并使用新过滤器发送请求以显示帖子。

但是在 JScroll 中,它仍然会留下旧的 href 并加载旧数据。例如 - 我在localhost/new上滚动,当我在 JScroll 中将选项卡更改为localhost/topnextHref时,而"http://localhost:8000/new?page=3 div.infinite-scroll"不是"http://localhost:8000/top?page=1 div.infinite-scroll".

如何更改它以使其与选项卡同步?

标签: javascriptajaxjquery-jscroll

解决方案


我找到了解决方案。

每次更改选项卡后,我
$('.infinite-scroll').removeData('jscroll').jscroll.destroy(); 再次添加并调用 JScroll 初始化程序。


推荐阅读