如何在所有浏览器中检索使用jQuery / JavaScript的锚链接到的完整URL?例如,我想从http://www.mysite.com/mypage.aspx
返回<a href="../mypage.aspx"></a>
。
我尝试了以下内容:
$(this).attr('href')
:问题是jQuery返回href的确切值(即../mypage.aspx
)。
this.getAttribute('href')
:这适用于Internet Explorer,但在FireFox中,其行为与上述相同。
有什么替代方案?我不能简单地将当前站点的路径附加到href值,因为在上述href的值转义当前目录的情况下,这不起作用。
答案 0 :(得分:5)
您可以创建img元素,然后将src属性设置为检索到的href值。然后,当您检索src属性时,它将是完全限定的。这是我在http://james.padolsey.com/javascript/getting-a-fully-qualified-url/中使用的示例函数:
function qualifyURL(url){
var img = document.createElement('img');
img.src = url; // set string url
url = img.src; // get qualified url
img.src = null; // no server request
return url;
}