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>
相关推荐
Java陈序员5 小时前
太香了!一款轻量级的 Elasticsearch 可视化管理工具!
vue.js·elasticsearch·vite
万物得其道者成6 小时前
前端大整数精度丢失:一次踩坑后的实战解决方案(`json-bigint`)
前端·json
鹏北海7 小时前
移动端 H5 响应式字体适配方案完全指南
前端
姜太公钓鲸2338 小时前
ROM就是程序存储器,实际的存储介质是Flash闪存。上述描述中的程序存储器是什么意思?
开发语言·javascript·ecmascript
柳杉9 小时前
使用AI从零打造炫酷医疗数据可视化大屏,源码免费拿!
前端·javascript·数据可视化
凌云拓界9 小时前
前端开发的“平衡木”:在取舍之间找到最优解
前端·性能优化·架构·前端框架·代码规范·设计规范
zhengfei6119 小时前
【XSS payload 】一个经典的XSS payload
前端·xss
简单Janeee9 小时前
[Vue 3 从零到上线]-第四篇:组件化思维——把网页像积木一样拆解
javascript·vue.js·ecmascript
全栈老石10 小时前
手写一个无限画布 #1:坐标系的谎言
前端·canvas
XW010599911 小时前
4-11判断素数
前端·python·算法·素数