vue-scrollto实现页面组件锚点定位

文章目录

前言

博主介绍:✌目前全网粉丝3W+,csdn博客专家、Java领域优质创作者,博客之星、阿里云平台优质作者、专注于Java后端技术领域。

涵盖技术内容:Java后端、大数据、算法、分布式微服务、中间件、前端、运维等。

博主所有博客文件目录索引:博客目录索引(持续更新)

视频平台:b站-Coder长路


背景

vue中在hash模式下,页面的动态渲染一般会根据vue-router来进行完成定位,基本不同页面切换如下所示:

shell 复制代码
#/index
#/team
#/time

若是此时我们想要实现跨组件来进行锚点定位,如何解决?

一般在页面中我们使用一个id="xxx",来进行标记位置,接着我们则使用一个a标签,href为#xxx,此时就能够完成锚点定位,那么在vue中如何操作呢,Vue中可以使用vue-scrollto库来实现页面中不同组件之间的锚点定位。


操作指南

安装及配置步骤

1、安装vue-scrollto

shell 复制代码
npm install --save vue-scrollto

2、在main.js中导入vue-scrollto

js 复制代码
import VueScrollTo from 'vue-scrollto'
Vue.use(VueScrollTo)

3、此时我们在任何一个标签中设置锚点,指定id=xxx

html 复制代码
<section id="about">

<section id="honer" class="section-bg">
  
<section id="honer" class="section-bg">

vue组件中使用

我们封装了一个Header以及index组件,对于顶部的tab栏目是在Header.vue中,而滚动的具体位置则是在index.vue中,此时我们依旧可以借助这个vue-scrollto进行轻松搞定:

方式一:标签中使用

shell 复制代码
<li><a v-scroll-to="'#about'">关于我们</a></li>
<li><a v-scroll-to="'#portfolio'">作品</a></li>

方式二:在vue组件中使用js控制

js 复制代码
<li><a class="tab" v-on:click="click1">关于我们</a></li>

methods: {
    click1() {
        console.log(555)
        this.$scrollTo('#contact')
    }
},

参考文章

1\]. [Vue一个页面不同组件之间的锚点定位](https://www.5axxw.com/questions/simple/stzqhi) \[2\]. [Vue路由器:锚链接到页面中的特定位置,例如/路线/#锚点](https://devpress.csdn.net/vue/632aed64357a883f870c76bd.html) *** ** * ** ***

相关推荐
xiaoxiao无脸男13 分钟前
纯css:一个好玩的按钮边框动态动画
前端·css·css3
rookie_fly33 分钟前
基于Vue的数字输入框指令
前端·vue.js·设计模式
元直数字电路验证39 分钟前
ASP.NET Core Web APP(MVC)开发中无法全局配置 NuGet 包,该怎么解?
前端·javascript·ui·docker·asp.net·.net
西部森林牧歌1 小时前
Arbess零基础学习,使用Arbess+GitLab实现Vue.js项目构建并主机部署
vue.js·gitlab·arbess·tiklab devops
rexling11 小时前
【Spring Boot】Spring Boot解决循环依赖
java·前端·spring boot
我有一棵树1 小时前
Vue 项目中全局样式的正确写法:不要把字体和主题写在 #app 上
前端·javascript·vue.js
龙仔CLL2 小时前
微前端乾坤vue3项目使用tinymce,通过npm,yarn,pnpm包安装成功,但是引用报错无法使用
javascript·arcgis·npm
Luna-player2 小时前
npm : 无法加载文件 C:\Program Files\nodejs\npm.ps1,因为在此系统上禁止运行脚本,解决方法
前端·npm·node.js
悢七2 小时前
windows npm打包无问题,但linux npm打包后部分样式缺失
linux·前端·npm
Felicity_Gao2 小时前
uni-app App升级功能实现
前端·学习·uni-app