我需要直接链接到我网站上的锚点,例如#about。当您在同一页面内链接时,此工作正常。但是,当我需要在外部链接到锚点时,例如www.example.com/#about,它不能正常工作。
因为主页上有很多动态内容,所以在锚链接尝试向下滚动到#about div之前,它还没有完全加载。因此,它会导致页面上的错误位置。
在内容完全加载之后,是否有某种方法可以将滚动延迟到锚点?我是否需要使用jquery而不是哈希链接到#about div?
答案 0 :(得分:0)
我还没有测试过,但是我认为如果你在window.onload函数中调用它,或者如果你不得不在setTimeout()中调用它,那么这样的东西应该可行。
function moveToHash() {
var urlHash = window.location.hash;
if(urlHash) {
window.location.hash = '';
window.location.hash = "#" + urlHash;
}
}
它可能有点乱,但它应该完成工作。