0

我的代码中有几个<a>标签。

但是,用户点击<a>标签后,浏览器会跳转到页面的顶部。

例如:

texts
…..
elements
…...
texts
…..
elements
…...
texts
…..
elements
…...

//the user has to scroll down to here to see the <a> tag.
//once click, the page will jump to the top (scroll to top) for some reason.
<a href = '#' >click here</a>

我知道我可能没有提供足够的信息,但我想知道是否有人能想到这个奇怪事情的原因。我没有创建原始代码,文件中有很多代码..非常感谢您的帮助!

4

5 回答 5

1

对锚标记中#的属性使用 hastag将导致链接跳转到顶部。href<a>

<a href='#'>click here</a>

您可以通过将 ID 包含在锚标记中,直接在主题标签之后来指定要跳转到的 ID。

例如:

通过点击:

<a href='#myElement'>Go to My Element</a>

页面会跳转到:

<div id='myElement"></div>
于 2013-08-02T22:55:47.467 回答
1
$('a[href^=#]').on('click',function(e){
    e.preventDefault();
});
于 2013-08-02T22:56:18.907 回答
1

如果您不希望链接表现得像链接,请使用不同的元素。如果这是您使用链接的原因,请使用 CSS 为其提供正确的外观和悬停行为。

于 2013-08-02T22:57:57.953 回答
0

如果一个元素被赋予了一个 id,那么:

<a href = '#someid' >click here</a>

会跳转到页面中的那个位置(将该元素放在页面顶部)。如果没有指定 id,'#' 只会使其跳转到页面顶部。

于 2013-08-02T22:55:57.067 回答
0

这就是锚标签的行为。当用户单击锚标记(链接)时,浏览器将遵循该href标记的值。

#引用是引用当前文档顶部的标准方式。因此,当用户点击<a href="#">click here</a>浏览器时,会将用户带到当前文档的顶部。

这不是一件奇怪的事情,它是链接在 HTML 中的工作方式。

于 2013-08-02T22:57:14.630 回答