我有一个包含以下脚本的HTML:
<script type="text/javascript">
function doRefreshWithInterval() {
setTimeout("doRefresh()", 60000 );
}
function doRefresh() {
window.location.reload(true);
}
if (window.location.href.indexOf("Dashboard.jspa") >= 0) {
doRefreshWithInterval();
}
</script>若要定期刷新页面,请执行以下操作。问题是当我向下滚动页面(它是一个很长的页面)时,在一些浏览器(特别是Firefox)上发生刷新时,浏览器会转到页面顶部,而不是我所在的位置。有没有办法防止这种情况,并让Firefox在刷新后向下滚动到最后一个位置?
发布于 2012-08-12 12:12:43
实际上,您只需要对现有代码进行一处微小的更改。将document.location.reload(true);更改为document.location.reload();。
使用true强制浏览器再次从服务器获取页面,这意味着您在该页面上的位置将丢失。当您移除true时,浏览器将从缓存中加载页面,并保留您在页面上的位置。
但是,如果您自动重新加载页面的原因是为了获取服务器可能已修改的页面的最新版本,则这可能没有帮助。
在Firefox 12.0中测试Firebug。
发布于 2012-08-12 12:09:23
我想到的一个解决方案是:
在刷新之前,获取页面的垂直位置并将该数字存储在cookie
https://stackoverflow.com/questions/11919647
复制相似问题