1. 程式人生 > >頁面重新整理的時候記住滾動條的位置

頁面重新整理的時候記住滾動條的位置

         知識點,1、滾動條滾動時候的方法(scrolltop);2、cookie(瀏覽器或其它軟體存cookie)3、onbeforeunload ;4、window.onload。

相容性較好的程式碼如下:window.onbeforeunload = function() {                   var scrollPos;                   if(typeof window.pageYOffset != 'undefined') {                        scrollPos = window.pageYOffset;                   } else if(typeof document.compatMode != 'undefined' &&
                        document.compatMode != 'BackCompat') {                        scrollPos = document.documentElement.scrollTop;                   } else if(typeof document.body != 'undefined') {                        scrollPos = document.body.scrollTop;                   }                   document.cookie = "scrollTop=" + scrollPos; //儲存滾動條位置到cookies中
              }              window.onload = function() {                   if(document.cookie.match(/scrollTop=([^;]+)(;|$)/) != null) {                        var arr = document.cookie.match(/scrollTop=([^;]+)(;|$)/); //cookies中不為空,則讀取滾動條位置                         document.documentElement.scrollTop = parseInt(arr[1]);
                        document.body.scrollTop = parseInt(arr[1]);                   }              }主要的一點就是,利用了onbeforeunload 這個時間,在即將離開當前頁面(重新整理或者關閉)時執行JavaScript。其次就是得記住當前的頁面滑到了哪裡。不能用這個方法的瀏覽器就得用不同的辦法進行了。再次就是在頁面載入的時候進行滾動,滾動到我們想要去的地方。儲存的方法可以用本地儲存,也可以用cookie。