使用jQuery/JavaScript从超链接获取完整的URL

Dev*_*rke 6 javascript url anchor jquery hyperlink

如何在所有浏览器中一致地使用jQuery/JavaScript检索锚链接到的完整URL?例如,我要回http://www.mysite.com/mypage.aspx<a href="../mypage.aspx"></a>.

我尝试过以下方法:

  1. $(this).attr('href'):问题是jQuery返回href的确切值(即../mypage.aspx).

  2. this.getAttribute('href'):这适用于Internet Explorer,但在FireFox中,它的行为与上面相同.

有什么选择?我不能简单地将当前站点的路径附加到href值,因为在上述href的值转义当前目录的情况下,这不起作用.

Bri*_*her 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;
}
Run Code Online (Sandbox Code Playgroud)