這個方法是一個通過的方法乾闰,不需要每個頁面都寫一次,這是利用cookie完成的叠赐,把記錄的滾動條的位置放入cookie,下次進入這個頁面的時候讀取cookie屡江,并設(shè)置滾動條位置為cookie中的值芭概,從而讓滾動條回到上一次的位置,實現(xiàn)返回上一次瀏覽的位置盼理,如果多個頁面要使用這個功能谈山,那就要定義多個cookie來記錄不同頁面滾動高度,為了解決這個問題使用了一個相對簡單的方法宏怔,就是cookie的值是以頁面的文件名命名奏路,js中創(chuàng)建cookie時,自動獲取網(wǎng)頁路徑鸽粉,截取頁面的文件名抓艳,并將cookie名設(shè)置為此文件名玷或,這樣就可以避免多次命名偏友,從而減少了代碼
具體實現(xiàn)的代碼如下:
/*返回上次瀏覽位置*/
$(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'