通过window.scrollTo实现丝滑跳转到页面的某个位置

原理

通过计算对应id的组件距离页面顶部的距离,来使用window.scrollTo丝滑跳转到该位置

代码如下:

html 复制代码
<div id="test1"></div>
<div id="test2"></div>
<div id="test3"></div>

<button  @click="scrollTo('test1')">丝滑跳转到指定id的div位置</button>
javascript 复制代码
    function scrollTo (id) {

      // 获取点击的按钮对应页面的id,及其相较于顶部的距离
      var PageId = document.querySelector('#' + id);
      var topHeight = PageId.offsetTop;

      // 使用平滑属性,滑动到上方获取的距离
      window.scrollTo({
        'top': topHeight,
        'behavior': 'smooth'
      })
    }
相关推荐
恋猫de小郭几秒前
豆包手机为什么会被其他厂商抵制?它的工作原理是什么?
android·前端·ai编程
码上成长3 分钟前
长耗时接口异步改造总结
前端·git·后端
风华同学3 分钟前
【系统移植篇】系统烧写
java·开发语言·前端
by__csdn5 分钟前
JavaScript性能优化实战:异步与延迟加载全方位攻略
开发语言·前端·javascript·vue.js·react.js·typescript·ecmascript
牛三金7 分钟前
魔改-隐语PSI通信,支持外部通信自定义
服务器·前端·算法
杨超越luckly8 分钟前
HTML应用指南:利用GET请求获取全国瑞思教育门店位置信息
前端·python·arcgis·html·门店数据
尘缘浮梦10 分钟前
chrome英文翻译插件
前端·chrome
HIT_Weston11 分钟前
58、【Ubuntu】【Gitlab】拉出内网 Web 服务:Gitlab 配置审视(二)
前端·ubuntu·gitlab
这是个栗子16 分钟前
【问题解决】Vue2 与 Vue3项目中 Node.js 版本选择
前端·node.js·nvm
222you17 分钟前
SpringBeanFactory
java·服务器·前端