vue3滚动条无法监测滚动高度问题
第一个是根组件
第二个是子组件
第三个是滚动复用组件
<el-scrollbar ref="scroll" style="height:100%" @scroll="handleScroll">
在滚动复用组件中想要监测滚动的高度变化,一开始没有使用el-scrollbar组件而是直接使用原生的格式导致如图所示
滚动条与文章列表并属于el-main的两个部分,而document.documentElement.scrollTop || document.body.scrollTop这个监测高度的方法只能监测整个页面的滚动变化,因此一直为0。
从网上搜寻后主要找到两种方案:
1、让scroll-page组件监听el-main的高度变化,需要实现组件之间的信息传递,这条路我没有走通,始终抓取不到el-main的属性
2、使用element plus中的el-scrollbar组件,利用this.$refs.scroll.$refs.wrapRef.scrollTop;这种方式去调用,wrapRef 通常是 Element UI 的 el-scrollbar 组件内部的一个具有滚动功能的 DOM 元素的引用,当你访问 wrapRef 的 scrollTop 属性时,你实际上是在获取这个特定元素的滚动条的当前位置,这样也能够获取到高度。
标签:
vue3
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 单元测试从入门到精通