如何在不使用所有链接导致此锚点的情况下在特定锚点启动站点?

时间:2013-10-14 21:15:05

标签: html location anchor

让我解释一下:我有一个网站,index.html 该站点应从特定锚点开始,该锚点位于页面的最底部。我使用此代码完成了此操作:

setTimeout("window.location.href='index.html#start'",0);

问题是:我想与其他人分享链接,例如index.html/#work 在这种情况下,网站不应该移动到#start锚点。但确实如此。

所以这是我的问题:如果请求的网站是#start,网站是否有可能滚动到index.html并且如果所请求的网站中有锚点,那么它总是保持不变? (例如index.html/#anchor

非常感谢!

1 个答案:

答案 0 :(得分:3)

不确定

if (window.location.hash === "") {
    window.location.hash = "start"
}

没有理由将哈希更改包装在setTimeout中,而不是更改href,只需更改hash,这样如果您更改名称,它仍将有效该文件或将代码移动到另一个文件。

另外,请记住将代码包装在window.onload中,因此您尝试跳转到的元素实际存在。 (使用window.onload = function() { /* code here */ }