zoukankan      html  css  js  c++  java
  • JS刷新页面后滚动条的位置不变

    有时候,在网页中点击了页面中的按钮或是刷新了页面后,页面滚动条又 会回到顶部,想看后面的记录就又要拖动滚动条,或者要按翻页键,非常不方便,想在提交页面或者在页面刷新的时候仍然保持滚动条的位置不变,最好的办法就是 在JS中用cookie记录下当前滚动条的位置,然后刷新时读取cookie就可以实现这个功能了。
    代码如下:
    <script type="text/javascript">
                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")}    
               }    
         </script>
    然后在html页面中设置<body id=body   onscroll=SetCookie("scroll",body.scrollTop);   onload="scrollback();">就可以在刷新或提交后滚动条的位置保持不变了。

    上面的是通用的解决方法,在.net中还可以用<pages maintainScrollPositionOnPostBack="true">这个配置,更容易。

  • 相关阅读:
    js数组合并
    火狐浏览器打开新标签不断刷新,怎么解决?
    python获取当前路径
    python模块os
    python模块sys
    python玩丢手绢问题,出局的顺序
    python list元素为dict时的排序
    利用等概率Rand5产生等概率Rand3(转)
    python垃圾回收机制(转)
    负数在计算机中如何表示?(转)
  • 原文地址:https://www.cnblogs.com/kennyliu/p/3373324.html
Copyright © 2011-2022 走看看