在sharepoint 2010中,如果当前页面的篇幅比较长,如何在拉动页面滚动条时,在刷新的条件下,保持滚动条位置,研究了一下,发现sharepoint 2010的母板页,和普通的asp.net页面有不太一样的地方,是通过一个属性document.getElementById("s4-workspace").scrollTop来控制的,以下是实现的脚本,只需要修改一下v4.master母版页,在里面添加一个javascript的方法。
<style> html { overflow: auto; } /*better than on the body*/ body { xoverflow: hidden; /*Needed to eliminate scrollbars*/ background: #000; font: normal80%/1.4verdana,arial,sans-serif; } </style> <script> window.onload = function () { document.getElementById("s4-workspace").scrollTop = 1; document.body.scroll = ‘yes‘; document.getElementById("s4-workspace").style.overflow = ‘auto‘; } </script>
在IE7,IE8,IE9,Google Chrome谷歌浏览器中,测试通过。
sharepoint 2010 页面刷新时滚动条位置保持不变 Controlling scrollbar position on postback