本文主要是介绍JS刷新页面后滚动条的位置不变,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
有时候,在网页中点击了页面中的按钮或是刷新了页面后,页面滚动条又 会回到顶部,想看后面的记录就又要拖动滚动条,或者要按翻页键,非常不方便,想在提交页面或者在页面刷新的时候仍然保持滚动条的位置不变,最好的办法就是 在JS中用cookie记录下当前滚动条的位置,然后刷新时读取cookie就可以实现这个功能了。代码如下:
function showInfo(type,code){window.location.href = "__URL__/show"+type+"/id/"+code;}function Trim(strValue){return strValue.replace(/^s*|s*$/g,"");}function SetCookie(sName,sValue){document.cookie = sName + "=" + escape(sValue);}function GetCookie(sName){var aCookie = document.cookie.split(";");for(var i=0; i < aCookie.length; i++){var aCrumb = aCookie[i].split("=");if(sName == Trim(aCrumb[0])){return unescape(aCrumb[1]);}}return null;}function scrollback(){if(GetCookie("scroll")!=null){document.body.scrollTop=GetCookie("scroll")}}
然后在html页面中设置
<body id=body οnscrοll=SetCookie("scroll",body.scrollTop); οnlοad="scrollback();">
就可以在刷新或提交后滚动条的位置保持不变了。
上面的是通用的解决方法,在.net中还可以用<pages maintainScrollPositionOnPostBack="true">这个配置,更容易。 [喝小酒的网摘]http://blog.hehehehehe.cn/a/2391.htm
这篇关于JS刷新页面后滚动条的位置不变的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!