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



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

我已经试过了:

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

  2. this.getAttribute('href'):这在Internet Explorer中工作,但在FireFox中它的行为与上述相同。

替代方案是什么?我不能简单地将当前站点的路径附加到href值,因为在上述情况下,href的值会转义当前目录,这将不起作用。

可以创建一个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;
}

最新更新