当div中绑定数据,给它一个属性overflow-y: scroll,添加长度大小,使其能够出现滚动条;每次刷新的时候滚动条总是会出现在最上方,这使我很头疼,经过查阅网上资料,返现两种方法可行。如下:

第一种方案

  将上一个页面的div的scrolltop距离长度记录在cookie中,然后通过js调整刷新页面时的长度记录,代码如下:

js代码:

<script>
var _h = 0;
function SetH(o) {
_h = o.scrollTop
SetCookie("a", _h) }
window.onload = function () {
document.getElementById("x").scrollTop = GetCookie("a");//页面加载时设置scrolltop高度
}
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 == aCrumb[0])
return unescape(aCrumb[1]);
} return 0;
}
</script>

html中代码如下:

<div id="x" style="height: 200px; overflow: scroll" onscroll="SetH(this)">
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
<p>1</p>
</div>

第二种方案

  1.通过div的onscroll事件记录滚动条的scrollTop值,设置到document.cookie
  2.页面加载时再读取document.cookie的值,设置给div的scrollTop

js代码实现:

<script type="text/javascript">
function KeepScrollBar() {
var scrollPos;
if (typeof window.pageYOffset != 'undefined') {
scrollPos = window.pageYOffset;
}
else if (typeof document.body != 'undefined') {
scrollPos = document.getElementById('divContent').scrollTop;
}
document.cookie = "scrollTop=" + scrollPos;
} window.onload = function (){
if (document.cookie.match(/scrollTop=([^;]+)(;|$)/) != null) {
var arr = document.cookie.match(/scrollTop=([^;]+)(;|$)/);
document.getElementById('divContent').scrollTop = parseInt(arr[1]); }
}
</script>

html:

<div class="content" data-role="tab-content" data-id="course-a" runat="server" id="divContent" style="height: 365px; overflow-y: scroll" onscroll= "KeepScrollBar()">
<p> 1</p>
<p> 2</p>
<p> 3</p>
<p> 4</p>
<p> 5</p>
<p> 6</p>
<p> 7</p>
<p> 8</p>
<p> 9</p>
<p> 10</p>
<p> 11</p>
<p> 12</p>
<p> 13</p>
<p> 14</p>
<p> 15</p>
<p> 16</p>
</div>

最新文章

  1. CABasicAnimation的delegate的坑
  2. MYCAT介绍(转)
  3. WebSocket 学习笔记--IE,IOS,Android等设备的兼容性问题与代码实现
  4. C# 5.0 新特性——Async和Await使异步编程更简单
  5. html整理(2)
  6. javascript中单体模式的实现
  7. MySQL的存储引擎整理
  8. JMeterPluginCMD命令行工具使用详解
  9. VS发布,TFS邮件设置截图
  10. java\C#\php主流语言实现FMS流媒体传输协议RTMP的开源组件
  11. DJANGO用户名认证一例
  12. Oracle查看表空间使用情况
  13. HandsonTable日期控件的汉化
  14. Redis详解(二)------ redis的配置文件介绍
  15. NoSQL Manager for MongoDB 30天到期破解
  16. javascript事件循环
  17. Vivado约束文件(XDC)的探究(1)
  18. c# .net 编程方式修改环境变量无效的解决办法
  19. vs2015新建web应用程序空模板和添加webapi的模板生成文件的比较
  20. day5 if while for

热门文章

  1. [原创]基于Zybo SDIO WiFi模块调试
  2. 【GIT】git 删除本地分支和远程分支、本地代码回滚和远程代码库回滚
  3. Centos 部署.net Core
  4. 在SSL / https下托管SignalR
  5. Windows键盘钩子
  6. Linux NFS服务器的安装与配置方法(图文详解)
  7. WPF使用总结
  8. 移动UI框架
  9. ntp---时钟同步服务
  10. 转发 Learning Go — from zero to hero