【问题标题】:reload to top of page [duplicate]重新加载到页面顶部[重复]
【发布时间】:2014-04-11 02:21:47
【问题描述】:

已解决 将此添加到 html:

<body onload="location.href='#menu'"> 

它是唯一的解决方案,而不是滚动问题的重复....pff.

我编辑了这个问题,希望 SO 社区能够重新审视它。假定的重复问题中的任何解决方案都不起作用,或者我使用不正确。我用两个解决方案发布了我的代码,以表明我正在尝试。请帮忙!

我找不到超级基本的 javaScript 问题.....我正在从试验中学习,主要是错误和 StackOverflow。

当我刷新时,我想返回页面顶部(F5 或浏览器重新加载或任何其他可以重置页面的方式)。我相信这是浏览器工作的“旧”方式,但是当我刷新时,我会留在页面上的同一个地方。我正在 Chrome 中进行测试。当然,我希望在所有浏览器中都有这种行为。

在这种情况下,我正在构建一个单页应用程序。大多数移动用户永远不会使用刷新/重新加载,因为它隐藏在汉堡包中,但我想通过返回主状态来处理此事件。在这种情况下,&lt;div data-role="page" id="menu"&gt;

我正在使用 jquery,但我想确定并学习 javascript。

谢谢大家。

代码:

 document.ready = init;

函数初始化(){

var button = $('#facultyButton')
    ,facList = $('#facultyList')
    ,search = $('#facSearch')
    ,monikerBox = $('.monikerBox')
    ,events = $('#events')
    ,ajaxString = "http://stage.webscope.com/veith/dev/ajax.pl?"
    ,html = "";

//executed on init
console.log('page init');
 $('html').scrollTop(0);

//事件

$(window).on('load',function(){
    $('html, body').scrollTop(0);
});
button.click(function(){
    var value = "a";

【问题讨论】:

  • 感谢克里斯蒂安·瓦尔加!我只是看了看并尝试添加 document.body.scrollTop = document.documentElement.scrollTop = 0;然后 $('body').scrollTop(0);在初始化但重新加载后我仍然在看同一个div!控制台不报任何错误。
  • 标记此副本的每个人都尚未进行测试。感谢您保持如此整洁,但您错了。现在每个“页面” div 在重新加载时都会滚动到顶部,但是当我在 div id="facultySearch" 中时,我不会被带到 id="menu" 的 div 中......

标签: javascript jquery reload


【解决方案1】:

窗口的加载事件仅在页面加载完成后立即运行一次。因此,您可以确保在页面加载后无论出于何种原因(第一次查看或刷新)它都会运行。

$(window).on('load', function(){
    $('html, body').scrollTop(0);
});

【讨论】:

  • 所以我们的想法是一样的。这似乎不起作用。我留在同一个地方。我相信挂断是 data-role="page" 属性。我需要跳出来。我在单个 html 文档中有 6 个“页面”。我的问题更像是跳到锚点???
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-07-29
  • 1970-01-01
  • 1970-01-01
  • 2013-01-27
  • 2020-03-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多