Vue3实现吸顶导航功能

背景

需要实现当浏览器上下滚动时,若距离顶部的滚动距离大于78px,吸顶导航显示,小于78px隐藏。

实现

使用vueuse插件中的useScroll方法​​​​​​​和动态类名控制进行实现

  1. 安装 vueuse组件
shell 复制代码
npm i @vueuse/core
  1. 导入
shell 复制代码
import { useScroll } from '@vueuse/core'
 
const { y } = useScroll(window)    //函数中 是基于什么对象进行滚动,本次 基于window进行滚动
  1. 根据y的值来判断
    这里的show属性能够决定该div块是否显示,这里利用y的值,当滚动距离大于78px时候,就给改div加上show属性,使其显示。
html 复制代码
<div class="app-header-sticky" :class="{ show: y > 78 }">

<div>
相关推荐
anyup1 小时前
30 分钟用 Trae Work + 魔珐星云做出会讲故事的 AI 3D 具身交互智能数字人
前端·ai编程·trae
IT_陈寒1 小时前
Vue的响应式竟然在这常见操作下失效了
前端·人工智能·后端
你怎么知道我是队长1 小时前
JavaScript 事件介绍
开发语言·前端·javascript
宇晨T1 小时前
从零搭建企业级Web服务:Shell脚本 + LNMP + Docker 实战指南
前端·docker·容器
禅思院1 小时前
AI对话前端从入门到崩溃:一个长对话引发的五层优化战争【四】
前端·架构·前端框架
恋猫de小郭1 小时前
Flutter Windows 开始支持 Impeller ,还修复了多窗口 bug
android·前端·flutter
柳杉2 小时前
没写一行代码!我用 ChatGPT 5.6 (Sol) 做了一个智慧充电站 3D 大屏
前端·chatgpt·数据可视化
Henrii_历小海2 小时前
WhatsApp Web 不是手机镜像:多设备协议、本地数据流与出海获客流水线
前端·智能手机
ayqy贾杰2 小时前
Claude Fable 5 提示词泄漏,抓紧学习下
前端·后端·面试
To_OC10 小时前
别再串行写 await 了,Promise.all 才是并行请求的正确打开方式
前端·javascript·promise