Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/412.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用后退按钮将页面滚动到页面顶部_Javascript_Jquery_Twitter Bootstrap - Fatal编程技术网

Javascript 使用后退按钮将页面滚动到页面顶部

Javascript 使用后退按钮将页面滚动到页面顶部,javascript,jquery,twitter-bootstrap,Javascript,Jquery,Twitter Bootstrap,我想我遇到了一个典型的关于Bootstrap的后退按钮问题,我真的试着在互联网上寻找解决方案,但是没有。 我正在使用引导导航药片。 我有大约8粒药丸,当我点击其中任何一粒时,页面会滚动到特定的部分,URL会变为xyz.com/abc#sectionx 当我按下后退按钮时,URL将更改为xyz.com/abc,但页面不会滚动回顶部 ---****----- 编辑:我想我没有说清楚。 URL会更改,但页面仍保留在同一节xyz.com/abc#sectionx上 因此,如果用户不查看URL,那么他们会

我想我遇到了一个典型的关于Bootstrap的后退按钮问题,我真的试着在互联网上寻找解决方案,但是没有。 我正在使用引导导航药片。 我有大约8粒药丸,当我点击其中任何一粒时,页面会滚动到特定的部分,URL会变为xyz.com/abc#sectionx 当我按下后退按钮时,URL将更改为xyz.com/abc,但页面不会滚动回顶部

---****-----

编辑:我想我没有说清楚。 URL会更改,但页面仍保留在同一节xyz.com/abc#sectionx上 因此,如果用户不查看URL,那么他们会认为按后退按钮没有效果

---****-----

所以我试着用这个:

$('html,body').on('hashchange', function () {
    $('body').scrollTop(0);
});
但这不起作用,所以我尝试用另一种方式定义Top的价值:

$('html,body').on('hashchange', function () {
    var top = $(window.location.hash).offset().top;
    $('body').scrollTop('top');
});
但那不起作用,所以我试着:

$('html,body').on('hashchange', function () {
 if (window.scrollY>0) {
 window.scrollTo(0,window.scrollY-20)
 setTimeout("gototop()",10)
 }
});
我也尝试过用
window
替换
html,body
,但这也不起作用。 我真的很困惑该做什么以及如何让后退按钮将我带到页面顶部。问题是后退按钮正在改变URL,这很好,但它也需要滚动到顶部。
关于如何实现这一目标的任何指导都将非常有价值。我非常感谢jQuery或纯javascript的指导

如果您正在寻找滚动到顶部的方法。可以考虑浮动按钮,也可以考虑分隔每个部分的链接。如上所述,用户通常希望“后退”按钮执行预期的操作

你可以很容易地用自己的锚制作一个链接,就像这样

<h2 id="top">Top of Page</h2>

// block of content

<a href="#top">Go to top</a>

// block of content

<a href="#top">Go to top</a>

.....
页面顶部
//内容块
//内容块
.....

当网站弄乱后退按钮时,我是唯一一个真正感到恼火的人吗(附议。我不建议这样做,因为很多人都依赖“后退”按钮来完成。我个人认为这样做是非常不直观的。如果你按下“后退”按钮,你不希望页面保持在网站的同一部分。你希望它去到你以前的位置,在这种情况下,这是页面的顶部。后退按钮应该用于页面之间的导航,而不是页面内的导航。许多网站提供了一个浮动按钮,一旦用户开始滚动,我认为这是值得追求的,而不是弄乱用户的页面expectations@DeekshaJuneja一个按钮“卡住”并漂浮在内容顶部,上面写着“返回顶部”,参见示例什么你认为用户希望后退按钮做什么吗?因为在我的例子中,后退按钮在点击几下后不会做任何事情,因为锚链接会更改URL。所以按下后退按钮只会更改URL,但不会将您重定向到任何页面。我想知道这是否会让用户感到恼火。一般来说,def错误行为。我知道锚链接可能会很奇怪,因为它们只是让你四处走动。如果你想深入了解它,我建议你检查一下,因为我不是用户体验专家。