当前位置:首页 > 行业动态 > 正文

HTML React Hooks 滚动到元素

在React中,可以使用useRef和useEffect钩子来实现滚动到元素的功能,以下是一个简单的示例:

HTML React Hooks 滚动到元素  第1张

import React, { useRef, useEffect } from 'react';
function ScrollToElement() {
  const elementRef = useRef(null);
  useEffect(() => {
    if (elementRef.current) {
      elementRef.current.scrollIntoView({ behavior: 'smooth' });
    }
  }, []);
  return (
    <div>
      <h1>页面标题</h1>
      <p>这里是一些内容...</p>
      <button onClick={() => window.scrollTo(0, 0)}>回到顶部</button>
      <div ref={elementRef}>
        <h2>目标元素</h2>
        <p>这里是目标元素的内容...</p>
      </div>
    </div>
  );
}
export default ScrollToElement;

在这个示例中,我们首先使用useRef钩子创建一个名为elementRef的引用,并将其绑定到目标元素上,在useEffect钩子中,我们检查elementRef.current是否存在,如果存在,则使用scrollIntoView方法将页面滚动到该元素的位置,我们在页面上添加一个按钮,当点击该按钮时,页面会滚动到顶部。

0