【发布时间】:2020-01-17 07:25:41
【问题描述】:
我有一个包含多行的表格,每行都有一个按钮,单击其中任何一个按钮时,我希望它滚动到顶部以及一些我如何实现它但滚动不流畅,它直接跳到那个div,我使用了多个 npm 库,polyfill(由 chrome 团队在 github 问题上建议),使用窗口对象,尝试更改 chrome://flags(启用平滑滚动)但其中任何一个都不起作用...
如果我在没有({behavior: "smooth"}) 的情况下使用它,它会直接跳到它上面,当我使用({behavior: "smooth"}) 时,它会像滚动到顶部(比如 1 毫米)一样破碎 100 毫秒,然后像滞后一样停止。
请帮忙!!!
smoothscroll.polyfill();
const top = useRef();
const Component=()=>{
const scrollToTop = () => {
top.current.scrollIntoView({
behavior: "smooth"
});
};
const list=()=> (
data.map((item)=> {
return(
<Row>
<Column>
{data.id}
</Column>
<Column>
{data.name}
</Column>
<Column>
{data.section}
</Column>
<Column>
<button onClick={()=>scrollToTop()}>
manage
<button>
</Column>
</Row>
);
});
)
return (
<div ref="top"/>
{list()}
);
}
【问题讨论】:
-
似乎是 Chromium 问题。我在 Angular 组件中遇到了同样的问题,但仅在 Chrome 和 Edge 中.. Firefox 工作正常。
标签: reactjs