【问题标题】:Converting absolute path to relative将绝对路径转换为相对路径
【发布时间】:2011-11-07 18:05:07
【问题描述】:

通过 javascript 或 jquery 将绝对路径转换为相对路径的最佳方法是什么?

例如考虑如下:

"http://localhost:2011/Content/Images/Product/Large/3.jpg" 

 "/Content/Images/Product/Large/3.jpg" 

【问题讨论】:

  • 那不是相对路径。要成为相对的,它必须相对于某物。例如,如果页面为http://localhost:2011/Content/Pages/Page.html,则相对路径为../Images/Product/Large/3.jpg

标签: javascript jquery relative-path absolute-path


【解决方案1】:

使用<a> 元素包含位置属性的技巧。

$("<a href='http://localhost:2011/Content/Images/Product/Large/3.jpg'>")
  .prop("pathname");

【讨论】:

  • 绝妙绝招!您能否参考任何解释该“路径名”道具的文档?我们可以依赖的其他道具是什么?
  • @abernier: Here's a list. 不过它确实声明它是 HTML5。我不知道跨浏览器支持。
【解决方案2】:

只需使用window.location.pathname

【讨论】:

  • javascript或jquery没有提供自然的方法吗?
  • @AnyOne:2-3 行代码。不需要库函数:获取主机部分的长度,确保 URL 以主机部分开头,创建从 host-part.length 开始的子字符串。
猜你喜欢
  • 2017-08-01
  • 2011-05-02
  • 2016-12-14
  • 1970-01-01
相关资源
最近更新 更多