固定 Div 高度干扰平滑滚动(React-Scroll)

时间:2021-04-28 16:24:03

标签: javascript reactjs

功能如下:

function Leaderboard() {
  const [active, setActive] = useState();
  const onToggle = (id) => {
    setActive(id === active ? null : id);
    setTimeout(() => {
      scroller.scrollTo(id, {
        smooth: true,
        duration: 500,
        spy: true,
        exact: true,
        offset: -15,
      });
    }, 600);
  };
  return (
    <div
      style={{
        padding: 24,
        minHeight: 200,
        height: "90vh",
        overflowY: "scroll",
      }}
    >
      <Acc
        title="Dolor eiusmod consectetur consequat magna nulla labore "
        id="a1"
        onToggle={onToggle}
        active={"a1" === active}
      />
      <Acc
        title="Dolor eiusmod consectetur consequat magna nulla labore "
        id="b2"
        onToggle={onToggle}
        active={"b2" === active}
      />
      <Acc
        title="Dolor eiusmod consectetur consequat magna nulla labore "
        id="c3"
        onToggle={onToggle}
        active={"c3" === active}
      />
    </div>
  );
}

如果不使用 style={{ padding: 24, minHeight: 200, height: "90vh", overflowY: "scroll",}},smoothscroll 可以完美运行,但是当我放置它时它停止工作?有什么解决方法吗?

我不想让整个网站滚动……只有那个 div 组件。我不明白为什么在设置 height: "90vh" 时平滑滚动停止工作......它在没有限制的情况下工作。

我尝试将另一个 <div> 放在中间,但仍然没有运气。我认为它会理解高度限制的 div,类似于它解释浏览器限制的方式,但显然不是。

任何帮助都会非常有帮助!谢谢!

0 个答案:

没有答案