美文网首页
vue中使用锚点

vue中使用锚点

作者: 忘了呼吸的那只猫 | 来源:发表于2022-07-05 11:50 被阅读0次

vue中直接使用锚点这个功能在没有引入vue-router之前是没有问题的,引入vue-router之后在未开启history模式的情况下会被视为路由的一部分。

这个时候再想使用锚点功能就不能直接用<a href="#name"></a>这种方式了,而是使用scrollIntoView方法进行锚点的跳转。

以下是源码:

<!DOCTYPE html>
<html lang="zh">
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
        <script src="https://unpkg.com/vue@2.6.14/dist/vue.js"></script>
        <script src="https://unpkg.com/vue-router@3.5.4/dist/vue-router.js"></script>
    </head>
    <body>
        <div id="app">
            <li>
                <a href="javascript:void(0)" @click="goAnchor('tag')">跳转到目标位置</a>
            </li>
            <div style="height: 2000px;"></div>
            <a name="tag" id="tag">目标位置</a>
        </div>


        <script>
            const Foo = {
                template: `<div>Foo</div>`,
            }
            const routes = [{
                path: '/foo',
                component: Foo
            }]
            const router = new VueRouter({
                routes // (缩写) 相当于 routes: routes
            })
            const app = new Vue({
                router,
                data: {},
                methods: {
                    goAnchor(e) {
                        var id = "#" + e;
                        document.querySelector(id).scrollIntoView({
                            behavior: "smooth",
                            block: "center",
                            inline: "nearest",
                        });
                    },
                },
            }).$mount("#app")
        </script>

    </body>
</html>

相关文章

  • vue-router和锚点冲突问题

    传统的锚点定位会与vue-router中的路由设置存在冲突,都是使用'#'进行的,所以这里使用一直方法来模拟锚点跳...

  • Vue添加锚点(兼容直接输入地址时scrollBehavior不

    Vue添加锚点有很多方法,今天我们来说vue-router提供的一种 vue-router官网说明锚点就是在链接中...

  • vue.js封装锚点组件

    记录一下使用vue.js封装锚点组件的代码。项目中存在固定头部的情况。主要思路为在组件初始化时,将锚点列表中的位置...

  • iview 锚点爬坑 && vue 锚点

    在vue中实现锚点定位效果 iview的锚点 原生锚点实现 iview爬坑点 且需要把滚动容器的id或者class...

  • vue使用锚点跳转

  • vue中使用锚点

    vue中直接使用锚点这个功能在没有引入vue-router之前是没有问题的,引入vue-router之后在未开启h...

  • vue中的锚点

    今天写搭建一个PC网站,用到返回顶点的功能,想到了锚点用到了scrollIntoView()方法 这样点击就能跳转...

  • 解决vue路由与锚点冲突

    传统的锚点定位会与vue-router中的路由设置存在冲突,解决方法自定义锚点跳转: html: js:

  • vue 锚点

    在某些场景中,我们通常使用锚点,进行定位,跳转我们需要的页面 方法一a 标签的锚点跳转 如果在同一页面跳转,该方法...

  • HTML(三)锚点和列表

    锚点标签 .... 作用:同一个文档中创建指向该锚(位置)的链接 定义是用的name属性,锚点链接使用href属性...

网友评论

      本文标题:vue中使用锚点

      本文链接:https://www.haomeiwen.com/subject/sdlsbrtx.html