Javascript 如何在进入页面时转到特定定位点(不起作用)

Javascript 如何在进入页面时转到特定定位点(不起作用),javascript,html,anchor,markup,Javascript,Html,Anchor,Markup,首先,这是我目前的状态: 黑框应为例如“关于”部分。我想实现这一点,如果您进入我的页面(thsbrk.de),您可以直接进入我的参考资料部分(锚定“#参考资料”)。然后,如果点击“关于”链接,您将向上滚动到“关于”部分。我已经试着让它工作了,但是没有。锚似乎不起作用了 如果有人能看看我的代码并为我提供一个解决方案,那就太棒了:) (卷轴还没有实现,我只问锚问题) 编辑:这里我有一个例子,它应该如何工作:试试这个,然后告诉我结果: $(document).ready(function() {

首先,这是我目前的状态:

黑框应为例如“关于”部分。我想实现这一点,如果您进入我的页面(thsbrk.de),您可以直接进入我的参考资料部分(锚定“#参考资料”)。然后,如果点击“关于”链接,您将向上滚动到“关于”部分。我已经试着让它工作了,但是没有。锚似乎不起作用了

如果有人能看看我的代码并为我提供一个解决方案,那就太棒了:)

(卷轴还没有实现,我只问锚问题)


编辑:这里我有一个例子,它应该如何工作:

试试这个,然后告诉我结果:

$(document).ready(function() {
   window.location.href = '#references';
});
然后修改锚定标记,如下所示:

<a name="references">Here</a>
这里

在头部添加这样的脚本标签。让它也成为第一个脚本

<script>
location.href="http://thsbrk.de/#references"
</script>

location.href=”http://thsbrk.de/#references"
从你的代码中,你也做了同样的事情。但只要尝试对脚本标记重新排序,它可能会起作用。

Plain JS:

window.onload=function() {
  var anchorHash = 'references';
  document.getElementsByName(anchorHash)[0].scrollIntoView();
}
下面是2009年的jQuery示例—可能有更新的方法

在你的情况下,这可能有效

$(document).ready(function() {
  var anchorHash = 'references';
  var pos = $('#'+anchorHash).position();
  window.scrollTo(0,pos.top);
});

这是一个糟糕的解决方案。为什么不滚动或设置location.hash?因为他/她不想强迫访问者使用滚动条。我认为这不难理解。这似乎和我之前做的差不多,只是缺少了document ready函数。请不要忘记,您需要有足够的页面高度,以便能够将用户导航到您想要的任何位置。否则,您的锚点可能不会位于页面顶部。由于所讨论的元素没有
名称
属性集,因此这将不起作用。我不想滚动它。我将在我的帖子中编辑一个例子。@Vilx:这是从他的网站:
好的,很酷,谢谢,我想我会试试的。我希望它能起作用。它们会滚动。他们使用window.scroll