0

我想保存/确定滚动状态(当前位置),这样当用户返回上一个站点时,他可以从他离开的位置继续他的工作。

我可以将滚动位置连续保存到全局变量并在用户回来时读取吗?

4

2 回答 2

4

使用 javascript,您可以找出滚动高度,然后将其设置为 cookie。这不是一个好方法,但它是可能的。

找到滚动高度:

$(document).ready(function(){
    $(window).scroll(function(){
       var scrolled = $(this).scrollTop(); 
        console.log(scrolled);
    });
});

我建议使用 jquery cookie 插件将其设置为 cookie 或会话: http: //archive.plugins.jquery.com/project/Cookie http://www.sitepoint.com/eat-those-cookies-with- jQuery/

然后将变量添加到cookie:

$(document).ready(function(){
    $(window).scroll(function(){
        $.removeCookie("mySiteScrolled");
        var scrolled = $(this).scrollTop(); 
        $.cookie("mySiteScrolled", scrolled);
        console.log(scrolled);
    });
});

然后添加“检查滚动”语句

$(document).ready(function(){
    var scrolled = $.cookie("mySiteScrolled");
    if(scrolled){
        $(window).scrollTop(scrolled);
    }
    $(window).scroll(function(){
        $.removeCookie("mySiteScrolled");
        var scrolled = $(this).scrollTop(); 
        $.cookie("mySiteScrolled", scrolled);
        console.log(scrolled);
    });
});
于 2013-07-23T21:33:46.987 回答
0

我可能会使用 jQuery 轻松确定 scoll 位置$(document).scrollTop();并使用本地存储来设置/获取位置。

于 2013-07-23T21:32:58.797 回答