当前位置: 首页 > 面试题库 >

刷新页面并保持滚动位置

纪成礼
2023-03-14
问题内容

有人可以告诉我我在做什么错吗?我需要在一段时间后刷新页面,但是它会刷新到页面顶部,我需要不更改页面位置!所以这是我现在无法使用的,是meta标签吗?这是我所没有的仍然不刷新必须做错了什么吗?

这是我本来的…

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
    <head>
        <meta http-equiv="refresh" content="72">
        <meta http-equiv="Pragma" CONTENT="no-cache">
        <meta http-equiv="Expires" CONTENT="-1">

        <style type="text/css">
        body
        { 
            background-image: url('../Images/Black-BackGround.gif');
            background-repeat: repeat;
        }
        </style>
    </head>

    <script type="text/javascript">

    function saveScrollPositions(theForm) {
        if(theForm) {
            var scrolly = typeof window.pageYOffset != 'undefined' ? window.pageYOffset
                                                   : document.documentElement.scrollTop;
            var scrollx = typeof window.pageXOffset != 'undefined' ? window.pageXOffset
                                                  : document.documentElement.scrollLeft;
            theForm.scrollx.value = scrollx;
            theForm.scrolly.value = scrolly;
        }
    }
    </script>

 <form action="enroll.php" name="enrollment" method="post" onsubmit="return saveScrollPositions (this);">
  <input type="hidden" name="scrollx" id="scrollx" value="0" />
  <input type="hidden" name="scrolly" id="scrolly" value="0" />

  <STYLE type="text/css">
   #Nav a{ position:relative; display:block; text-decoration: none; color:Black; }
   Body td{font-Family: Arial; font-size: 12px; }
  </style>

阅读了一些初始答案后,我将其更改为…

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>

<style type="text/css">
body
{ 
    background-image: url('../Images/Black-BackGround.gif');
    background-repeat: repeat;
}
</style>
</head>


<script>
function refreshPage () {
    var page_y = $( document ).scrollTop();
    window.location.href = window.location.href + '?page_y=' + page_y;
}
window.onload = function () {
    setTimeout(refreshPage, 35000);
    if ( window.location.href.indexOf('page_y') != -1 ) {
        var match = window.location.href.split('?')[1].split("&")[0].split("=");
        $('html, body').scrollTop( match[1] );
    }
}
</script>

<STYLE type="text/css">
#Nav a{ position:relative; display:block; text-decoration: none; color:black; }
Body td{font-Family: Arial; font-size: 12px; }
</style>

问题答案:

更新

您可以使用document.location.reload(true)下面提到的方法代替下面的强制技巧。

将HTML替换为:

<!DOCTYPE html>
<html>
    <head>
        <style type="text/css">
            body { 
                background-image: url('../Images/Black-BackGround.gif');
                background-repeat: repeat;
            }
            body td {
               font-Family: Arial; 
               font-size: 12px; 
            }
            #Nav a { 
                position:relative; 
                display:block; 
                text-decoration: none; 
                color:black; 
            }
        </style>
        <script type="text/javascript">
            function refreshPage () {
                var page_y = document.getElementsByTagName("body")[0].scrollTop;
                window.location.href = window.location.href.split('?')[0] + '?page_y=' + page_y;
            }
            window.onload = function () {
                setTimeout(refreshPage, 35000);
                if ( window.location.href.indexOf('page_y') != -1 ) {
                    var match = window.location.href.split('?')[1].split("&")[0].split("=");
                    document.getElementsByTagName("body")[0].scrollTop = match[1];
                }
            }
        </script>
    </head>
    <body><!-- BODY CONTENT HERE --></body>
</html>


 类似资料:
  • 如何刷新显示在中的数据(在其适配器上调用),并确保滚动位置被重置到它原来的位置? 如果是良好的ol'则只需检索,检查其,然后使用相同的精确数据调用。 在的情况下,这似乎是不可能的。 我想我应该使用它的,它确实提供了,但是检索位置和偏移量的正确方法是什么? 和? 还是有更优雅的方法来完成这项工作?

  • 本文向大家介绍js实现页面刷新滚动条位置不变,包括了js实现页面刷新滚动条位置不变的使用技巧和注意事项,需要的朋友参考一下 今天因为这个问题困扰了很久网上的例子都尝试没效果,后来发现一点原来是内容最外层没有div的原因 以上就是本文的全部内容,希望对大家有所帮助,同时也希望多多支持呐喊教程!

  • 我需要一些帮助如何保持保持当前锚链接活动后刷新页面。实际上,我有这个垂直的navbar菜单(http://prntscr.com/fz9yct),默认情况下,我将类active添加到中,所以当我们打开页面时,navbar看起来就像您在屏幕截图中看到的那样。 当我滚动,或单击任何其他navbar列表项,一切工作良好,平滑滚动到适当的部分,并删除类活动从上一个锚链接,并添加到适当的。 问题是当我刷新p

  • 本文向大家介绍页面刷新时记住滚动条的位置jquery代码,包括了页面刷新时记住滚动条的位置jquery代码的使用技巧和注意事项,需要的朋友参考一下 @*点击按钮页面刷新的时候 记住滚动条的位置*@

  • 本文向大家介绍切换到新路由时,页面要滚动到顶部或保持原先的滚动位置怎么做呢?相关面试题,主要包含被问及切换到新路由时,页面要滚动到顶部或保持原先的滚动位置怎么做呢?时的应答技巧和注意事项,需要的朋友参考一下 滚动到顶部:在new Router()的时候,配置 scrollBehavior(to, from, savedPosition) { return { x: 0, y: 0 } }

  • 问题内容: 我正在MVC中从事一个项目,并且对此有所了解。有一些成长的烦恼,但一旦您找出来,那还不错。在WebForms世界中,真正简单的一件事是保持页面上的滚动位置。您所要做的只是将MaintenanceScrollPositionOnPostback属性设置为true。但是,在MVC中,我不使用回发,因此这对我不起作用。处理此问题的标准方法是什么? 编辑: Ajax是可以接受的,但我也想知道如