当前位置: 首页 > ds >正文

【React】获取元素距离页面顶部的距离

文章目录

    • 代码实现

代码实现

import { useEffect, useRef, useState } from 'react';const DynamicPositionTracker = () => {const [distance, setDistance] = useState(0);const divRef = useRef(null);useEffect(() => {const targetDiv = divRef.current;if (!targetDiv) return;// 计算距离函数const calculate = () => {// 获取元素相对于视口的位置const rect = targetDiv.getBoundingClientRect();// 获取页面垂直滚动量const scrollTop = window.pageYOffset;setDistance(rect.top + scrollTop);};// 初始化计算calculate();// 监听滚动和尺寸变化const resizeObserver = new ResizeObserver(calculate);resizeObserver.observe(targetDiv);window.addEventListener("scroll", calculate);// 清理监听return () => {resizeObserver.disconnect();window.removeEventListener("scroll", calculate);};}, []);return (<div ref={divRef}>当前距离顶部: {distance}px</div>);
};
http://www.xdnf.cn/news/850.html

相关文章:

  • Spark(20)spark和Hadoop的区别
  • 数据赋能(203)——原则与原理——原则方法
  • 应用层核心协议详解:HTTP, HTTPS, RPC 与 Nginx
  • 健康养生,开启新生活
  • 随机深林算法是分类还是回归?
  • Selenium的ActionChains:自动化Web交互的强大工具
  • 棉花糖实验新解
  • 《数据结构之美--双向链表》
  • 第十四届蓝桥杯 2023 C/C++组 飞机降落
  • 快充协议芯片XSP04D支持使用一个Type-C与电脑传输数据和快充取电功能
  • c++_csp-j算法 (4)
  • 国防科大清华城市空间无人机导航推理!GeoNav:赋予多模态大模型地理空间推理能力,实现语言指令导向的空中目标导航
  • LeetCode 热题100题解(Java版本)
  • 设计模式 建造者模式
  • git比较不同分支的不同提交文件差异
  • Floyd算法求解最短路径问题——从零开始的图论讲解(3)
  • ubuntu 22.04 安装和配置 mysql 8.0,设置开机启动
  • 11-DevOps-Jenkins Pipeline流水线作业
  • [SpringMVC]请求响应参数传递
  • 机器学习 Day13 Boosting集成学习方法: Adaboosting和GBDT
  • AOSP Android14 Launcher3——远程窗口动画关键类SurfaceControl详解
  • VR制作攻略:如何制作VR
  • 在kali中安装AntSword(蚁剑)
  • 【HDFS入门】深入解析DistCp:Hadoop分布式拷贝工具的原理与实践
  • Android Studio打开xml布局文件内存会快速增加如何设置
  • Spark-SQL与Hive
  • 【数字图像处理】彩色图像处理(1)
  • spark和Hadoop的区别与联系
  • Lucky配置反向代理+Https安全访问AxureCloud服务(解决证书续签问题)
  • LLamaFactory微调效果与vllm部署效果不一致如何解决