我正在构建一个使用react-scroll
库的网站,并且正在使用Link
组件来激活某些过渡。我正在使用duration
属性,它在 Chrome 上运行良好,但是当我在 Firefox 上测试网站时,持续时间不会改变,并且运行速度明显快于 Chrome。这是我的代码:
<Link
activeClass="active"
to={this.state.prevSectionId}
spy={true}
onSetActive={() => this.handleSectionChange(-1)}
duration={1000}>
<FontAwesomeIcon icon={faChevronUp} size="lg" />
我还有一个自定义button
,可以滚动到页面顶部,并且在 Firefox 中的动画速度也比在 Chrome 中快得多,没有设置持续时间:
<div id="scrollToTopButtonWrapper">
<button onClick={() => window.scrollTo(0, 0)}>
<FontAwesomeIcon icon={faArrowCircleUp} size="4x" />
</button>
</div>
此问题会影响网站与其他动画的功能,尽管根本原因是运行所需的时间。
所以似乎这个问题是由scroll-behavior
设置为在我的 css 中smooth
引起的。我能够通过从 css 中删除它并在我的Link
组件中添加smooth={true}
来解决此问题。