创建链接而不实际将整个链接放在<a> tag</a>中

时间:2014-04-14 19:23:23

标签: javascript php jquery

我一直想知道其他网站如何进行导航链接。 像我这样的大多数初学者都把整个链接放在标签

<a href="www.example.com/news.html">News</a>

或类似的东西:

<a href="news.html">News</a>

但我最近看到很多网站都是这样做的:

<a href="/news.html">News</a> 

然后浏览器地址栏显示如下

http://www.example.com/news/

首先我想知道你怎么称呼这种方法?这样做有什么好处。最后,它是如何运作的?。

我想研究它,但我不知道在谷歌上输入什么。我确实尝试过很多我能想到的与此相关的关键词,但没有什么能与我正在寻找的东西接近

4 个答案:

答案 0 :(得分:1)

有4种基本链接类型:

自我链接:href=""。这是“与自己联系”的简写形式。您会看到它用于页内锚点,例如href="#top"和链接。

亲属:href="news.html"。单击此按钮将尝试在SAME目录中加载news.html页面作为包含链接的页面,因此如果您在http://example.com/foo/bar.html上,则会尝试加载{{1} }}

本地绝对:http://example.com/foo/news.html。这将尝试从网站的文档根目录加载href="/news.html"页面。如果您在news.html,则会尝试加载http://example.com/foo/bar/html。前导http://example.com/news.html是使其成为局部绝对而非相对路径的原因。

完全绝对:/。一个完整的网址,如果需要可以指向一个完全不同的网站。它可以指向您所在的完全相同的站点,但基本上它是“去那里,无论在哪里”。

答案 1 :(得分:0)

最佳实践(对我来说?)是第一个,您需要为最易读的代码编写所有URL。

如果您使用相同的域名,则第一个和第三个链接是相同的。

第二个是不同的,如果你在www.example.com/index.html,你会去www.example.com/news.html .. 但是,如果您使用的是www.example.com/categoy/index.html,则会重定向到www.example.com/categoy/news.html而不是根目录。

但是我不明白你为什么要谈论/ news /目录?

答案 2 :(得分:0)

这与HTML有关,而与JavaScript有关。您的第一个代码段使用绝对路径。第二个使用相对路径。有关详细信息,请阅读:http://www.coffeecup.com/help/articles/absolute-vs-relative-pathslinks/

答案 3 :(得分:0)

相对网址可能会为您带来一些结果。

  • news.html将相对于您当前的位置进行导航
  • /news.html将相对于根域名进行导航

例如,如果您当前的位置为http://example.com/sub/

href="news.html"会转到http://example.com/sub/news.html

href="/news.html"会转到http://example.com/news.html

另见http://www.w3.org/TR/WD-html40-970917/htmlweb.html#h-5.1.2