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>
相关推荐
kisshyshy1 分钟前
前端路由进化史:从刷新白屏到SPA,手写一个Hash路由就懂了!
前端·javascript·react.js
保加利亚的风1 小时前
Docker 学习文档(Mac + Docker Desktop 版)
前端·后端
java1234_小锋1 小时前
Vue3专题 - 条件渲染
前端·javascript·vue.js
明月_清风1 小时前
🚀 AI Agent 完全入门指南:从 LLM 到生产落地,新手必懂的 34 个核心概念
前端·后端·ai编程
嘟嘟07171 小时前
从零理解 useRef:React 中操作 DOM 与持久化变量的唯一桥梁
javascript
鸽鸽1 小时前
Vue 3 API 完全指南:从 Options 到 Composition 的进阶之路
前端·vue.js
名字还没想好☜1 小时前
React 用 Portal + Context 实现全局 Toast:一次调用、自动消失与队列管理
前端·javascript·react.js·react·next.js
嘟嘟07171 小时前
摘要 手把手实现路由鉴权守卫,逐行拆解 ProtectRoute、localStorage、Navigate state、useLocation、FormDat
javascript
HjhIron1 小时前
React Router 通关指南:从入门到鉴权,一个项目全搞定
前端