让我解释一下:我有一个网站,index.html
该站点应从特定锚点开始,该锚点位于页面的最底部。我使用此代码完成了此操作:
setTimeout("window.location.href='index.html#start'",0);
问题是:我想与其他人分享链接,例如index.html/#work
在这种情况下,网站不应该移动到#start
锚点。但确实如此。
所以这是我的问题:如果请求的网站是#start
,网站是否有可能滚动到index.html
并且如果所请求的网站中有锚点,那么它总是保持不变? (例如index.html/#anchor
)
非常感谢!
答案 0 :(得分:3)
不确定
if (window.location.hash === "") {
window.location.hash = "start"
}
没有理由将哈希更改包装在setTimeout
中,而不是更改href
,只需更改hash
,这样如果您更改名称,它仍将有效该文件或将代码移动到另一个文件。
另外,请记住将代码包装在window.onload
中,因此您尝试跳转到的元素实际存在。 (使用window.onload = function() { /* code here */ }
)