vue a标签锚点跳转不改变路由的方式

Vue路由与a标签链接锚点发生冲突

近期在vue项目中,使用了a标签锚点定位对应内容的时候发现路由也发生了变化,此时如果去刷新页面则会出现找不到页面的情况。

如果直接使用下面的方法进行锚链接,会导致路由变成xxx,这样显然不是我们需要的

javascript 复制代码
<a href="#xxx" rel="external nofollow" ></a>
<div id="xxx"></div>

解决方法

javascript 复制代码
<a @click.prevent="anchor('comment')">点击我跳转至comment</a>
<div id="comment">我是comment区域</div>
javascript 复制代码
methods: {
  /*锚链接跳转*/
  anchor(anchorName) {
    /*找到锚点*/
    let anchorElement = document.getElementById(anchorName);
    /*如果对应id的锚点存在,就跳转到锚点*/
    if(anchorElement) {
      anchorElement.scrollIntoView();
    }
  }
}
相关推荐
董世昌41几秒前
什么是事件冒泡?如何阻止事件冒泡和浏览器默认事件?
java·前端
Bigger2 分钟前
在 React 里优雅地 “隐藏 iframe 滚动条”
前端·css·react.js
小沐°4 分钟前
vue3-ElementPlus出现Uncaught (in promise) cancel 报错
前端·javascript·vue.js
栀秋6666 分钟前
LangChain Memory 实战指南:让大模型记住你每一句话,轻松打造“有记忆”的AI助手
javascript·langchain·llm
四瓣纸鹤8 分钟前
F2图表在Vue3中的使用方法
前端·javascript·vue.js·antv/f2
それども15 分钟前
浏览器CSR和SSR渲染区别
javascript·lua
web前端12315 分钟前
# @shopify/react-native-skia 完整指南
前端·css
shanLion16 分钟前
从 iframe 到 Shadow DOM:一次关于「隔离」的前端边界思考
前端·javascript
精神状态良好18 分钟前
RAG 是什么?如何让大模型基于文档作答
前端
CRAB19 分钟前
解锁移动端H5调试:Eruda & VConsole 实战指南
前端·debug·webview