什么是链接有一个“#”号的标志

我检查了一些网站,他们有一个英镑(#)login的url。 它有什么作用?

<a href="#" >Link name</a> 

这是一个“片段”或“命名锚”。 您可以使用链接到文档的一部分 。 通常,当您链接到一个页面时,浏览器将在页面顶部打开它。 但是你链接到一个半部分,你可以使用片段链接到该标题(或其他)。

如果页面中没有<a name="whatever"/>标记,则浏览器将链接到页面的顶部。 如果片段是空的,那么它也将链接到页面的顶部。

对于只有片段<a href="#">Link name</a> ,那么这只是一个链接到当前页面的顶部。

您经常会看到与javascript结合使用的那种链接。 符合标准的HTML需要一个href属性,但是如果你打算用javascript处理请求,那么“#”就是一个合理的占位符。

…只是添加一些额外的有用的提示。

您可以使用JavaScript中的document.location.hash访问和更改它。

它可以指向一个有名字的锚(例如<a name="top"></a>或者一个具有相应id的元素(例如<div id="top"></div> )。

单独看到一个(例如, <a href="#" onclick="pop()">popup</a> )通常意味着正在使用链接来专门运行JavaScript。 这是不好的做法。

任何a元素都应该有一个指向有效资源的href 。 如果不存在,请考虑使用另一个元素,例如button

#表示链接到锚点。

我想我还要提一些其他的东西:

使用'#'作为激活JavaScript的链接的href是不好的,因为它将页面滚动到顶部 – 这可能不是你想要的。 而是使用javascript:void(0)

井号( # )表示在页面上定位锚。 例如,如果你在页面的某个地方包括这个:

 <a name="foo"></a> 

或者,最近:

 <div id="foo">*part of page*</div> 

然后点击具有href #foo的页面上的链接,它将导航到具有名称或ID为foo div的锚点。

但是,如果你只有href # ,它会导致页面的顶部。

这链接回页面本身。 它通常用于实际运行一些JavaScript的链接。