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>
相关推荐
King of fraud13 小时前
HTML 页面的 CSS 选择器详解
前端·css·html
前端 贾公子13 小时前
Milvus使用指南 (下)
java·服务器·前端
用户542778485154013 小时前
浏览器后台休眠节流
前端
蜡台13 小时前
Vue 3 原生 ESM 开发实战:不用打包工具,从零搭建组件化应用
前端·javascript·vue.js·html
我的div丢了肿么办13 小时前
grid布局justify-items和align-items、justify-content和align-content
前端·css
用户2986985301413 小时前
在 React 中使用 JavaScript 将 HTML 转换为图片
javascript·react.js·html
寻缘千鹤13 小时前
LogicFlow流程图 PNG 导出「线上按钮置灰、无反应」故障复盘
前端·javascript·vue.js
梨想橙汁13 小时前
Vite 优化、踩坑汇总 + Webpack 迁移 Vite 实战
前端·webpack·vite
10share13 小时前
给 JSX 组件也来一份 Vue 式 scoped:jsx-scoped 让样式隔离不再靠自觉
前端·vue.js
小聪70814 小时前
elpis-core 领域模型驱动设计解析
前端