我有一个问题: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
after文件消失。有什么建议吗?
您的URL被重写为file///K:/AmberCRO%20SOP/2011-07-05/SOP-SOP-3.0.pdf
的原因是您指定了http://file://
开头的http://
是正在使用的协议,您的浏览器正在剥离第二个冒号(:),因为它无效。
注意
如果你链接到类似的东西
<a href="file:///K:/yourfile.pdf">yourfile.pdf</a>
上面表示一个链接,指向您正在查看URL的机器上的k:drive上名为k:/yourfile.pdf
的文件。
你可以这样做,例如下面创建一个到C:temptest.pdf
的链接
<a href="file:///C:/Temp/test.pdf">test.pdf</a>
通过指定file://,表示这是一个本地资源。此资源不在internet上
大多数人没有K:/驱动器。
但是,如果这是你想要实现的,那没关系,但这不是网页上"典型"链接的工作方式,除非每个访问你链接的人都可以访问(相同?)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
是一个格式错误的
%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"
为"每个人"或某个特定组共享您的文件夹,并尝试以下操作:
<a href="file://YOURSERVERNAME/AmberCRO%20SOP/2011-07-05/SOP-SOP-3.0.pdf"> Download PDF </a>
尽管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"替换为"file"2/所有上述变体,在ffile或file之前加上前缀http://。
我所能看到的最好的情况是,如果有人想打开(编辑)或保存文件,就有可能完成。但是,否则exec文件将不会执行。