当前位置: 首页 > news >正文

vue 点击滑动到页面指定位置(点击下滑滚动)的功能

需求

点击页面上的 文字 滑动到页面指定位置
在这里插入图片描述

三种方法

      document.getElementById('show').scrollIntoView() // 默认滚动至节点置顶document.getElementById('show').scrollIntoView(false) // 默认滚动至节点显示document.getElementById('show').scrollIntoView({ behavior: "smooth", block: "end", inline: "nearest" }); // 见下文

scrollIntoView() 方法的使用

scrollIntoView([alignToTop,scrollIntoViewOptions ]) 方法可以携带最多两个参数;

alignToTop 可选

  如果为 true,元素的顶端将和其所在滚动区的可视区域的顶端对齐。这是这个参数的默认值。如果为 false,元素的底端将和其所在滚动区的可视区域的底端对齐。

scrollIntoViewOptions 可选

  behavior 可选定义动画过渡效果,auto 或 smooth 之一。默认为 auto。block 可选定义垂直方向的对齐,start、center、end 或 nearest 之一。默认为 start。inline 可选定义水平方向的对齐,start、center、end 或 nearest 之一。默认为 nearest。

示例

<div @click="switchMenu('1')">产品服务</div>
<div id="show" ref="view">展示</div>

1、利用scrollIntoView()方法,该方法将调用它的元素滚动到浏览器窗口的可见区域(根据其他元素的布局,元素可能无法完全滚动到顶部或底部)
ps:页面可滚动时才有用!!!可通过设置css实现

document.getElementById("show").scrollIntoView() 直接跳转到指定位置,效果比较生硬
methods: {switchMenu(index) {console.log(111, index)switch (index) {case 0:breakcase 1:document.getElementById("show").scrollIntoView();breakcase 2:this.$message.success("敬请期待")breakcase 3:breakdefault:break}}},

缓慢移动至目标

 function switchMenu () {document.getElementById('kinds').scrollIntoView({ behavior: 'smooth' })}

scrollIntoView提供了scrollIntoViewOptions对象参数

在这里插入图片描述

http://www.lryc.cn/news/224741.html

相关文章:

  • LCD婴儿电子秤pcba/芯片方案设计
  • 2023年开发语言和数据库排行
  • 实现http请求-hutool
  • Ubuntu22.04 FTP 搭建以及挂载
  • Mac电脑Visio文件编辑查看软件推荐Visio Viewer for Mac
  • 【星海出品】flask (二) request替代VUE测试flask接口
  • Vue3路由配置
  • Harbor(V2.8+) 登录时报错 net/http: TLS handshake timeout
  • 【 云原生 | K8S 】kubectl 详解
  • 2011年03月24日 Go生态洞察:Gobs数据编码与Go的完美契合
  • Spring集成MyBatis(自定义类和xml配置文件两种形式)
  • Git系列之Git入门级(带你走进Git的世界)
  • GPU架构与计算入门指南
  • 功能测试转自动化测试好不好转型?
  • 微软surface laptop禁用触摸屏(win10、设备管理器)
  • 冒泡排序算法原理和代码实现,就是这么简单!
  • [工业自动化-6]:西门子S7-15xxx编程 - PLC系统硬件组成与架构
  • pinpoint监控tomcat应用,页面显示No data collected
  • 【左程云算法全讲4】前缀树、非比较排序
  • 微头条项目实战:新增RequestHeader注解
  • E云管家个微协议框架--新版本的利器
  • 百度上线“文心一言”付费版本,AI聊天机器人市场竞争加剧
  • 代码随想录算法训练营第四十七天丨 动态规划part10
  • 微前端:quankun
  • CSDN每日一题学习训练——Java版(克隆图、最接近的三数之和、求公式的值)
  • XOR Construction
  • K8S容器持续Terminating无法正常关闭(sider-car容器异常,微服务容器正常)
  • Spring 循环依赖
  • MySQL 8.0.13升级到8.0.35记录 .NET
  • flink udtaf 常年不能用