3

我在应用程序中使用phonegap,这是listview jquery中的页面显示项目之一。如果我有 50 个项目并且用户滚动并按下项目,则会显示详细页面项目。我的问题,我们是否可以保存上一个最后位置滚动,所以当用户按下后退按钮时,他们不会再看到第一项。

谢谢

4

1 回答 1

1

如果您使用的是 JQuery Mobile,则可以在隐藏页面时存储当前滚动位置(在其中添加了检查,因为您可能希望某些页面保留滚动位置,而在其他时候您想让它重置) :

$("#myListPage").bind('pagebeforehide', function (event, data) {
    if (data.nextPage[0].id === "myItemDetailsPage") {
        // Store the scroll position, in case we want to go back
        myPage.scrollPosition = $("#myListPage-myList").scrollTop();
    }
});

然后当页面显示时:

$("#myListPage").bind('pageshow', function () {
    $("#myListPage-myList").scrollTop(myPage.scrollPosition);
});

虽然我应该说有时我不需要这样做,而且我经常不得不做相反的事情——调用scrollTop(0)强制页面返回顶部。

于 2013-04-18T07:39:27.193 回答