【发布时间】:2015-07-22 20:04:13
【问题描述】:
我有一个内置在 reactjs (SPA) 中的长页面。它有很多链接。当用户向下滚动并单击其中一个链接时,将呈现新页面。
一切都很好,但是当用户点击返回按钮(浏览器)时,之前的长页面会重新呈现并返回到顶部。
是否有任何简单的解决方案可以确保 used 转到他上次点击的页面的完全相同的部分?
【问题讨论】:
标签: javascript reactjs
我有一个内置在 reactjs (SPA) 中的长页面。它有很多链接。当用户向下滚动并单击其中一个链接时,将呈现新页面。
一切都很好,但是当用户点击返回按钮(浏览器)时,之前的长页面会重新呈现并返回到顶部。
是否有任何简单的解决方案可以确保 used 转到他上次点击的页面的完全相同的部分?
【问题讨论】:
标签: javascript reactjs
我会在每个链接上注册一个点击事件并防止默认行为或使用其他元素,例如带有点击事件的跨度。
在此之后您需要存储滚动高度,例如here
myclick: function() {
var node = this.getDOMNode();
node.scrollTop = node.scrollHeight;
//navigate to your new site , update location
},
将scrollTop 存储在状态或local storage 中,当用户点击后退按钮时,您需要检查是否设置了scrollTop 并将scrollposition 更新回此节点。
【讨论】: