我有一个问题:
href="file://"
好吧,我想在html中指向一个链接文件,如果我像
file:///K:/filename.pdf
它可以打开一个文件,但如果我指向它:
href="http://file:///K:/AmberCRO%20SOP/2011-07-05/SOP-SOP-3.0.pdf"
它不起作用。链接更改为:
file///K:/AmberCRO%20SOP/2011-07-05/SOP-SOP-3.0.pdf
文件后colon
消失。有关做什么的任何建议?
答案 0 :(得分:8)
您的网址被重写为file///K:/AmberCRO%20SOP/2011-07-05/SOP-SOP-3.0.pdf
的原因是您指定了http://file://
开头的http://
是正在使用的协议,而您的浏览器正在剥离第二个冒号(:),因为它无效。
注意强>
如果您链接到类似
的内容<a href="file:///K:/yourfile.pdf">yourfile.pdf</a>
以上代表指向您正在查看网址的计算机上的k:驱动器上名为k:/yourfile.pdf
的文件的链接。
您可以执行此操作,例如,下面会创建指向C:\temp\test.pdf
<a href="file:///C:/Temp/test.pdf">test.pdf</a>
通过指定file://,您指示这是本地资源。此资源不在互联网上。
大多数人没有K:/驱动器。
但是,如果这是你想要实现的目标,那很好,但这并不是网页上“典型”链接的工作原理,除非每个人都要访问你的网页,否则你不应这样做link可以访问(相同的?)K:/驱动器(这可能是共享网络驱动器的情况)。
你可以尝试
<a href="file:///K:/AmberCRO-SOP/2011-07-05/SOP-SOP-3.0.pdf">test.pdf</a>
<a href="AmberCRO-SOP/2011-07-05/SOP-SOP-3.0.pdf">test.pdf</a>
<a href="2011-07-05/SOP-SOP-3.0.pdf">test.pdf</a>
请注意,http://file:///K:/AmberCRO%20SOP/2011-07-05/SOP-SOP-3.0.pdf
格式不正确
答案 1 :(得分:0)
%20
是AmberCRO SOP之间的空间。
尝试 -
href="http://file:///K:/AmberCRO SOP/2011-07-05/SOP-SOP-3.0.pdf"
或者将文件夹重命名为AmberCRO-SOP并将其写为 -
href="http://file:///K:/AmberCRO-SOP/2011-07-05/SOP-SOP-3.0.pdf"
答案 2 :(得分:0)
为“所有人”或某个特定群组共享您的文件夹并尝试以下操作:
<a href="file://YOURSERVERNAME/AmberCRO%20SOP/2011-07-05/SOP-SOP-3.0.pdf"> Download PDF </a>
答案 3 :(得分:0)
尽管ffile:////..exe曾经可以工作(例如-早期html 4的某些版本),但似乎html 5不允许这样做。 经过以下测试:
<a href="ffile:///<path name>/<filename>.exe" TestLink /a>
<a href="ffile://<path name>/<filename>.exe" TestLink /a>
<a href="ffile:/<path name>/<filename>.exe" TestLink /a>
<a href="ffile:<path name>/<filename>.exe" TestLink /a>
<a href="ffile://///<path name>/<filename>.exe" TestLink /a>
<a href="file://<path name>/<filename>.exe" TestLink /a>
<a href="file:/<path name>/<filename>.exe" TestLink /a>
<a href="file:<path name>/<filename>.exe" TestLink /a>
<a href="ffile://///<path name>/<filename>.exe" TestLink /a>
以及... 1 /用“文件”代替“ ffile” 2 /以上所有变体,均在ffile或文件前加上http://。
我能看到的最好的情况是,如果有人想打开(编辑)或保存文件,就可以实现。但是,该exec文件将不会执行。