我正在使用Marionette,Backbone和JsViews。
在我的应用程序中,我想保存用户立即进行的更改。保存后,我从其他服务获得了实际数据,因为其他用户也可以更改数据。 我的滚动位置有问题。重新渲染视图时,滚动位置将丢失。我用以下方法解决了这个问题:
if (that.model.get('lastpos')) {
$(document).ready(function ($) {
setTimeout(function() {
$(window).scrollTop(that.model.get('lastpos'));
}, 1);
});
}
这对我有用,但是有一件事打扰了我。滚动对用户可见,它会“闪烁”一小段时间。 我也尝试过:
$('html, body').animate({
scrollTop: scrollTo
}, 50);
但结果相同。 如何在不失去滚动位置的情况下重新呈现页面?有更好的方法吗?