js控制 页面刷新,但滚动条位置不变 浏览器兼容

页面加载时从cookie获取滚动条位置信息,然后附值给滚动条 

function window.onload() 

var arr; 
if(arr=document.cookie.match(/scrollTop=([^;]+)(;|$)/)) 
document.documentElement.scrollTop=parseInt(arr[1]); 
document.body.scrollTop=parseInt(arr[1]); 


页面刷新前保存滚动条位置信息到cookie 

function window.onbeforeunload(){ 
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; 

}

注册load 和 beforeunload 方法是:

if (window.addEventListener)
                {
                     window.addEventListener("load", onloadt, false);
					 window.addEventListener("beforeunload",onbeforeunloadt,false)
                }else if (window.attachEvent){
                     window.attachEvent("load",onloadt,false);
                     window.attachEvent("beforeunload",beforeunloadt,false);
                }else{
                     window.onload=onbeforeunloadt;
                     window.onload=onloadt;
                }



你可能感兴趣的:(js控制 页面刷新,但滚动条位置不变 浏览器兼容)