我对前端开发有点陌生,刚刚在这个领域找到了我的第一份工作。我正在开发一个使用 React 和 Redux 构建的网站。我遇到的问题是在一个包含多个 div 部分的页面上。Navbar 中的按钮使用 React onClick-event 来获取与按钮相关的部分的 id,然后“滚动到视图”以向下滚动到该部分。这很好用,尽管我希望能够到达同一页面并从不同的页面滚动到视图中。这是导航栏按钮的示例:
<li>
<FormattedMessage id="section.categories.funny">
{text => (
<button
type="button"
onClick={e => {
e.preventDefault();
if (document.getElementById('funny') !== null) {
document
.getElementById('funny')
.scrollIntoView({ block: 'start', behavior: 'smooth' });
}
}}
>
{text}
</button>
)}
</FormattedMessage>
</li>
所以这方面的一个例子是:假设这个页面在:'url.com/categories'。当我在此 url 上按下显示“有趣”的按钮时,页面向下滚动到 id 为“有趣”的部分没问题。但我也可以在另一个页面上 - 比如说:“url.com/categories/stories” - 那里有相同的导航栏,当我按下显示“有趣”的按钮时,我想被重定向到“url.com/categories”,然后向下滚动到“有趣”部分。
我希望我的问题有意义,如果没有,请告诉我!英语不是我的母语,提出正确问题的艺术似乎在学习如何编码方面发挥了重要作用。:) 正如我所说,我对此很陌生,根本没有使用 React 或 Redux。谢谢!/乔尔