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>
相关推荐
CoderYanger4 小时前
前端基础——HTML练习项目:填写简历信息
前端·css·职场和发展·html
muyouking114 小时前
深入理解 HTML `<label>` 的 `for` 属性:提升表单可访问性与用户体验
前端·html·ux
软件技术NINI4 小时前
html css js网页制作成品——饮料官网html+css+js 4页网页设计(4页)附源码
javascript·css·html
软件技术NINI4 小时前
html css js网页制作成品——HTML+CSS辣条俱乐部网页设计(5页)附源码
javascript·css·html
IT_陈寒5 小时前
Java性能调优:从GC日志分析到实战优化的5个关键技巧,让你的应用快如闪电!
前端·人工智能·后端
Mintopia5 小时前
🚀 Next.js API 压力测试:一场前端与后端的“极限拉扯”
前端·后端·全栈
Mintopia5 小时前
🛡️ 对抗性攻击与防御:WebAI模型的安全加固技术
前端·javascript·aigc
庙堂龙吟奈我何5 小时前
qiankun知识点
前端
SoaringHeart5 小时前
Flutter封装:原生路由管理极简封装 AppNavigator
前端·flutter
menu5 小时前
AI给我的建议
前端