news 2026/4/3 4:50:59

实现自定义指令 v-scrollBar,用于动态显示/隐藏滚动条,提升用户体验

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
实现自定义指令 v-scrollBar,用于动态显示/隐藏滚动条,提升用户体验
// src/directives/scrollbar.js export default { mounted(el, binding) { // 初始化滚动条状态 hideScrollbar(el); // 添加滚动事件监听 let scrollTimer = null; const handleScroll = () => { // 显示滚动条 showScrollbar(el); // 清除之前的定时器 if (scrollTimer) { clearTimeout(scrollTimer); } // 设置新的定时器,在停止滚动后隐藏滚动条 scrollTimer = setTimeout(() => { hideScrollbar(el); }, binding.value || 1000); // 默认1秒后隐藏,可通过指令参数自定义 }; // 保存定时器引用到元素上,便于销毁时清理 el._scrollTimer = scrollTimer; el._scrollHandler = handleScroll; // 绑定滚动事件 el.addEventListener('scroll', handleScroll); }, unmounted(el) { // 清理事件监听和定时器 if (el._scrollHandler) { el.removeEventListener('scroll', el._scrollHandler); } if (el._scrollTimer) { clearTimeout(el._scrollTimer); } } }; // 显示滚动条的函数 function showScrollbar(el) { el.classList.add('show-scrollbar'); } // 隐藏滚动条的函数 function hideScrollbar(el) { el.classList.remove('show-scrollbar'); }

使用

<div class="record-wrap" v-scrollBar> <DynamicRecordSuvery :flag="flag" :messageId="messageId" :thoughtContents="thoughtContent" @getItem="getItem" /> </div>
.record-wrap { flex-grow: 1; overflow-y: auto; margin-bottom: 10px; padding: 15px; /* 隐藏默认滚动条 */ scrollbar-width: none; /* Firefox */ &::-webkit-scrollbar { display: none; /* Chrome/Safari */ } .record-box { width: 100%; } } /* 显示滚动条(指令添加.show-scrollbar时) */ .record-wrap.show-scrollbar { scrollbar-width: thin; &::-webkit-scrollbar { display: block; width: 8px; } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/24 13:04:23

doris中的分区上卷

在 Doris 中&#xff0c;分区上卷&#xff08;Roll-Up&#xff09; 是一种优化存储和查询性能的重要机制&#xff0c;其核心是通过合并细粒度分区&#xff08;如日分区&#xff09;为粗粒度分区&#xff08;如月分区或年分区&#xff09;&#xff0c;减少分区数量并提升查询效率…

作者头像 李华
网站建设 2026/3/13 9:49:22

1分钟锁定核心期刊!借助Gemini3 选题定刊,GPT专业应用匹配期刊,轻松提升论文录用率

论文修改完成后,就进入了最终的投稿环节。现在期刊投稿量大,审稿时间长,投稿难度大,所以我们争取在第一次投稿时,就能选到与论文选题契合的期刊,以提升投稿的成功率。 这个时候,如果还去网上手动找资料,对比各个期刊是否契合自己的选题,就会非常浪费时间。那么就可以…

作者头像 李华
网站建设 2026/3/31 19:01:31

hot100 141.环形链表

1.思路&#xff1a;快慢指针法。如果链表有环的话&#xff0c;快指针一定可以在一段时间后追上慢指针&#xff0c;这两个指针一定会相遇。 2.注意&#xff1a;代码比较两个节点的时候&#xff0c;比较的是内存地址是否一致&#xff0c;并没有比较节点的val。 3.疑问。 &…

作者头像 李华
网站建设 2026/4/1 1:26:59

微信小程序uniapp-vue课程考试,错题,发帖,管理

文章目录具体实现截图主要技术与实现手段系统设计与实现的思路系统设计方法java类核心代码部分展示结论源码lw获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&#xff01;具体实现截图 本系统&#xff08;程序源码数据库调试部署讲解&#xff09;带文档1万…

作者头像 李华
网站建设 2026/4/3 3:05:22

Hibernate‌

‌Hibernate‌ 是一个开源的‌对象关系映射框架‌&#xff0c;用于简化 Java 应用程序与数据库的交互。它通过将数据库表映射到Java对象&#xff08;如POJO&#xff09;&#xff0c;使开发者能够使用面向对象的编程思维操作数据&#xff0c;而无需直接编写原生 SQL 语句。‌‌核…

作者头像 李华