【问题标题】:Get pathname from href in Javascript从 Javascript 中的 href 获取路径名
【发布时间】:2010-09-27 20:40:26
【问题描述】:

从锚标签 href 属性返回“路径名”的最简单方法是什么?

例子...说我有:

<a href="http://www.example.com/this/is/my/path.html">Blah</a>

我只需要返回这个“/this/is/my/path.html”部分。

想法?如果有帮助,我正在使用 jQuery..

谢谢!

【问题讨论】:

标签: javascript jquery


【解决方案1】:

我认为你可以使用路径名

$('a')[0].pathname;

【讨论】:

【解决方案2】:

在此处查看工作示例。http://jsfiddle.net/TvNmL/

HTML..

<a id='lnk' href="http://www.example.com/this/is/my/path.html">Blah</a>

javascript...

alert( document.getElementById('lnk').pathname);

【讨论】:

  • 查看我对本页其他答案的评论,关于 IE 中不返回路径中的前导/初始斜杠的不规则性,以及在所有其他浏览器中的工作方式。 (FF、chrome、safari 和 opera 都可以。)这里提供的 JsFiddle 对在所有不同的浏览器中打开后进行测试和查看很有帮助。
【解决方案3】:

我注意到仍然没有正确的答案来处理@Funka 提到的 IE 错误,所以这是我的解决方案:

HTML

<a href="/foo" id="foo">My link</a>

JS

document.getElementById("foo").getAttribute("href");

所有浏览器上的结果 '/foo'

【讨论】:

  • hrefpathname 不同时有查询参数或锚点 (/foo#bar)
猜你喜欢
  • 1970-01-01
  • 2011-02-01
  • 2020-05-14
  • 1970-01-01
  • 2013-03-14
  • 2020-03-14
  • 2011-11-16
  • 2012-01-21
相关资源
最近更新 更多