【问题标题】:Get full URL from a hyperlink using jQuery / JavaScript使用 jQuery / JavaScript 从超链接获取完整 URL
【发布时间】:2012-01-07 15:57:08
【问题描述】:

如何在所有浏览器中一致地使用 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 的值转义当前目录的情况下,这将不起作用。

【问题讨论】:

标签: javascript jquery url hyperlink anchor


【解决方案1】:

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

【讨论】:

  • 澄清一下,这适用于我测试过的所有浏览器:IE 6-9、Chrome、FireFox 和 Safari。
  • 请注意,至少在 Chrome 中,这导致服务器请求 URL。
猜你喜欢
  • 1970-01-01
  • 2012-10-08
  • 2015-04-15
  • 2023-03-12
  • 1970-01-01
  • 2023-03-29
  • 2016-09-07
  • 2014-02-18
  • 1970-01-01
相关资源
最近更新 更多