javascript – 从链接的href属性获取完整的URI

我想在某些方面确认。

我的目标是在从链接中读取href属性时总是得到相同的字符串(在我的例子中是URI)。例:

< a href =“test.htm”/> with base_url = http://domain.name/

< a href =“../ test.htm”/> with base_url = http://domain.name/domain/

< a href =“http://domain.name/test.htm”/> with base_url =来自http://domain.name/的任何文件夹

我需要从上述3种情况(或任何其他相同的字符串)获取http://domain.name/test.htm。

经过一些测试,似乎my_a_dom_node.href总是返回完整的URI,包括http://domaine.name,这应该是我想要的。

jQuery有一个不同的行为,$(my_a_dom_node).attr(‘href’)返回出现在HTML内的内容(文本)。所以我的诀窍是使用$(my_a_dom_node).get(0).href来获取完整的URI。

问题是:我可以依靠这个吗?

是的,你可以信赖!

一旦人们使用简单的JavaScript(没有jQuery),许多人问与您所要求的相反,他们希望获得真正的url,写成href属性,而不是完整的URL,在这种情况下,他们习惯于简单地做:

my_a_dom_node.getAttribute('href', 2); //works both IE/FF

然后它来了jQuery,帮助人们不要浪费时间找出他们需要这样的代码,并且jQuery总是返回真正的url写成href属性。

有趣的是,现在有人问如何获取完整的URL,因为jQuery返回一个href属性中写的。

http://stackoverflow.com/questions/2639070/get-the-full-uri-from-the-href-property-of-a-link

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:javascript – 从链接的href属性获取完整的URI