我的 docusaurus 主页上有多个部分,从顶部导航栏中,我可以scrollTo
通过检查使用以下代码来指定部分window.location.pathname==='/'
。
let navLink = document.querySelectorAll('nav .navbar__link');
if(navLink) {
navLink.forEach(function(link) {
link.addEventListener('click', function(e){
e.preventDefault();
let selectedSection = e.currentTarget.textContent.toLowerCase();
if(window.location.pathname === '/') {
window.scrollTo(0,document.querySelector(`#anchor-${selectedSection}-section`).offsetTop - 100);
}
})
})
}
当我在主页上时,它工作正常。
Home
通过单击导航链接从文档页面返回(路由)到主页后,该scrollTo
方法不起作用,我直接路由到文档路径而不是滚动到主页部分之一。虽然我正在检查window.location.pathname === '/'
代码没有执行。
有人可以帮我弄清楚从文档页面单击时路由幕后发生的事情。
注意:我已将上述脚本写入index.js
文件。