在页面加载时自动跳转到元素

时间:2011-10-08 12:00:12

标签: javascript html

我在页面上有这样的元素

<a href="#hi">go to hi</a>
.
.
<a name="hi">hi text here</a>

但我希望用户首先在页面加载时转到“hi text here”。怎么做?

4 个答案:

答案 0 :(得分:6)

我建议您首先测试另一个哈希值,然后再移动用户的浏览器以关注另一个元素:

if (!document.location.hash){
    document.location.hash = 'hi';
}

JS Fiddle demo

顺便提一下,您可以使用散列(URL中#之后的部分)跳转到任何具有id的元素,您不需要使用named-anchors( <a name="hi">...</a>)。

答案 1 :(得分:3)

要么,您可以使用带锚点的URL(mysite.com/#hi),也可以使用javascript:

document.getElementById('hi').scrollIntoView(true);

请注意,您应该使用ID,而不是姓名。

答案 2 :(得分:1)

您可以使用jQuery及其scrollTo插件,然后编写如下内容:

$.scrollTo("a[name = hi]");

它应该可以正常工作。

答案 3 :(得分:1)

我认为使用锚点会很有用:

<a name="hi">here goes the text information what you like</a>

在同一文档中创建指向“hi Section”的链接:

<a href="#hi">Go to hi</a>

或者,从另一页面创建指向“hi section”的链接:

<a href="http://www.stackoverflow.com/html_links.htm#hi">
Visit the hi Section</a>