【问题标题】:URI path navigation issueURI 路径导航问题
【发布时间】:2012-04-27 08:58:58
【问题描述】:

我的 jquery 代码是

    $(document).ready(function() {
      if (navigator.appVersion.indexOf("Win") != -1) {
       // Computers runs windows
        $("a[href$='.pdf']").each(function() {
            this.href = this.href.replace("Volumes", "KP01DS0194TG");
        });
      }
      if (navigator.appVersion.indexOf("Mac") != -1) {
        // computer is a Mac
        $("a[href$='.pdf']").each(function() {
            this.href = this.href.replace("KP01DS0194TG", "Volumes");
        });
      }
   });

我在 html 端的链接是<a href="file://///KP01DS0194TG/Quotes/Scanning/brother/Jobsheets/job no 12538.pdf">12538</a>

但是由于file://///,Jquery 不起作用 - 如果我把它拿出来它会很好用,但是我需要它在那里,否则我无法连接到它 - 关于我可以做些什么来纠正这个问题的任何想法有问题吗?

【问题讨论】:

  • 文件不只需要 3 个斜线吗? file:///
  • 我不确定,Dreamweaver 自动为我完成了 刚刚尝试使用 3 斜线,但它无法连接到文件
  • 哦。你打算在网站上运行它吗?如果是这样,放弃 Dreamweaver 和 google 'relative url paths'
  • 你确定 jquery 是问题吗?很难想象 jquery 选择器在进行搜索时会关心属性的实际值-标签关系。看起来更像是一个浏览器安全功能。
  • 说这不是一个网站,它只是公司的内部网站——因此员工可以更轻松地查看文件——不是所有人都能看到的

标签: javascript jquery html hyperlink file-uri


【解决方案1】:

“文件”URL 需要 3 个斜杠:

1) file://# 协议

2) /some/path/myfile.pdf # 文件和路径,包括根目录的前导“/”

无论操作系统是 Windows(“\”反斜杠)还是 *nix,这都是正确的

还有:

3) 空格不好。考虑命名您的目录和文件,其中不包含空格。

否则,请考虑在您的路径上运行“urlencode”(这会将空格转换为“%20”)

您可能还对 URL 的原始 RFC 感兴趣:

http://www.ietf.org/rfc/rfc1738.txt

【讨论】:

  • 我用 3 个斜杠尝试过,但它不起作用 - 它只适用于 5(链接到文件时,dreamweaver 自动为我设置)如果我做 3,JQuery 将无法识别它并且不会根据计算机更改它(它将使用 2 - 但不是 3 或 5 ),我会更改空格。
猜你喜欢
  • 1970-01-01
  • 2017-07-08
  • 2017-11-19
  • 2011-04-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-06-04
  • 2015-09-20
相关资源
最近更新 更多