我需要直接链接到我网站上的 anchor ,例如#about。当您在同一页面内链接时,这效果很好。但是,当我需要链接到外部 anchor (例如 www.example.com/#about)时,它效果不佳。
由于主页上有大量动态内容,因此在 anchor 链接尝试向下滚动到 #about div 之前,这些内容尚未完全加载。因此,这会导致页面上出现错误的位置。
是否有某种方法可以延迟滚动到 anchor ,直到内容完全加载之后?我需要使用 jquery 而不是哈希链接到 #about div 吗?
最佳答案
我还没有测试过它,但是我突然想到,如果你在 window.onload 函数中调用它,或者如果必须的话,甚至在 setTimeout() 中调用它,这样的东西应该可以工作。
function moveToHash() {
let urlHash = window.location.hash;
if(urlHash) {
window.location.hash = '';
window.location.hash = urlHash;
}
}
可能有点乱,但应该可以完成工作。
关于javascript - anchor 的外部链接 - 可以延迟滚动吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21447751/