3
我已经有了一个用backbone.js编写的web应用程序。假设我有一页搜索结果,用户将滚动到搜索结果的底部。用户点击最后的搜索结果,并显示该结果页面。Backbone.js - 后退按钮恢复滚动位置
我想要支持后退按钮,当用户点击“后退”时,路由器会启动并重新显示搜索页面。问题在于搜索页面重新呈现时,它再次滚动到顶部。
将结果恢复到原始位置的最佳方法是什么?
我已经有了一个用backbone.js编写的web应用程序。假设我有一页搜索结果,用户将滚动到搜索结果的底部。用户点击最后的搜索结果,并显示该结果页面。Backbone.js - 后退按钮恢复滚动位置
我想要支持后退按钮,当用户点击“后退”时,路由器会启动并重新显示搜索页面。问题在于搜索页面重新呈现时,它再次滚动到顶部。
将结果恢复到原始位置的最佳方法是什么?
考虑跟踪视图中的滚动位置。然后在一个render
或让route
改变位置的页面
View = Backbone.View.extend({
initialize: function() {
var self = this;
$(window).on('scroll', function() {
self.position = this.pageYOffset;
});
},
render: function() {
// render code
if (this.position) {
window.scrollBy(0, this.position);
}
}
});
而是结合窗口滚动事件(管理多个视图的滚动位置时引起的问题),我选择了抢pageYOffset +保存在改变改为查看。 – sgb