JS 点击商品进入详情,返回后,回到原来的位置

2016-12-06  本文已影响0人  我的头好大呀呀呀

这个方法是一个通过的方法,不需要每个页面都写一次,这是利用cookie完成的,把记录的滚动条的位置放入cookie,下次进入这个页面的时候读取cookie,并设置滚动条位置为cookie中的值,从而让滚动条回到上一次的位置,实现返回上一次浏览的位置,如果多个页面要使用这个功能,那就要定义多个cookie来记录不同页面滚动高度,为了解决这个问题使用了一个相对简单的方法,就是cookie的值是以页面的文件名命名,js中创建cookie时,自动获取网页路径,截取页面的文件名,并将cookie名设置为此文件名,这样就可以避免多次命名,从而减少了代码

具体实现的代码如下:

/*返回上次浏览位置*/

$(function () {

var str = window.location.href;

str = str.substring(str.lastIndexOf("/") + 1);

if ($.cookie(str)) {

$("html,body").animate({ scrollTop: $.cookie(str) }, 1000);

}

else {

}

})

$(window).scroll(function () {

var str = window.location.href;

str = str.substring(str.lastIndexOf("/") + 1);

var top = $(document).scrollTop();

$.cookie(str, top, { path: '/' });

return $.cookie(str);

})

/*返回上次浏览位置*/

引入jquery和jquery.cookie.js

在线jquery.cookie.js路径:'https://cdn.bootcss.com/jquery-cookie/1.4.1/jquery.cookie.min.js'

上一篇下一篇

猜你喜欢

热点阅读