Javascript 打开特定div上的页面

Javascript 打开特定div上的页面,javascript,html,vue.js,Javascript,Html,Vue.js,我使用vuejs和nuxt 在使用mysite.com/page1#section1时,我想转到第1页,重点放在section1上。 在我的代码中,我有: … 但这对新页面不起作用。当我在mysite.com/page1页面上,将#section1添加到url中时,它就起作用了 那么,当我打开一个新页面时,如何使锚工作?我应该在路由器中添加一些东西吗?使用如下方式: <a href="#section1">home</a> <div id="section1"&g

我使用vuejs和nuxt

在使用mysite.com/page1#section1时,我想转到第1页,重点放在section1上。 在我的代码中,我有:

但这对新页面不起作用。当我在mysite.com/page1页面上,将#section1添加到url中时,它就起作用了


那么,当我打开一个新页面时,如何使锚工作?我应该在路由器中添加一些东西吗?

使用如下方式:

<a href="#section1">home</a>

<div id="section1"></div>


要从任何按钮或链接访问div,应使用如下链接:

<a href="http://youpage.com/child#section1">go to section 1 in child page</a>


儿童使用:

<div id="section1"></div>


W3C规范关于锚定链接:

使用Vue路由,您可以轻松实现:

Vue.use(VueRouter);
 let routes = [
     {path: '/',component: require('./components/index.vue').default},
     {path: '/about',component: require('./components/about.vue').default},
 ]

const router = new VueRouter({
    routes
})

您定义了路由吗?是的,在nuxt.config.js中。这条路线很好,当我打开一个新页面时,我想把重点放在锚点上。指向此锚点的链接不在同一页中。@Raikyn此示例的工作方式应相同。您可以链接到另一个页面
https://my.link#my-节
在新页面中,您需要有一个带有
id的节#我的节
@LionelT是的,它应该可以工作,但由于某些原因它不能工作。html元素(一个div)带有一个id=“section1”。如果我使用一个元素,它就会工作。但是当从另一个站点打开mysite.com/page1#section1链接时,我被重定向到page1,但没有关注section1。我担心这是由于单页应用程序的构建方式造成的。如果存在片段,则需要签入创建的
lifehook,如果存在片段,则使用例如
document.getElementById('section1').scrollIntoView()
;当我检查document.getElementById('section1')时,它是空的。但当我浏览“document”时,实际上可以看到id为section1的div。我以为getElementById可以返回嵌套元素,但事实并非如此here@Raikyn你应该使用
mounted
lifehook。