如何创建一个在IE和Firefox中都有效的file://超链接?

时间:2009-05-01 14:23:11

标签: internet-explorer firefox hyperlink

在我的文档网页中,我经常需要提供存储在Intranet上的位置,文件和应用程序(.xbap)的链接。

在IE中,这适用于格式如下的URL:

<a href="file://///company.org/ProjectA/StatsReport">Go to folder</a>
<a href="file://///company.org/ProjectA/Readme.txt">Download file</a>
<a href="file://///company.org/ProjectA/Dashboard.xbap">Run xbap</a>

这些链接在IE下都可以正常工作,但在Firefox中却没有。

有谁知道如何将上述链接格式化为在IE和Firefox中工作?

修改 如果我将它们放在本地文件中,上面的链接实际上是有效的。当它们是网络上的html文件(不在我的机器上)的一部分时,它们仅停止在Firefox中工作。 Firefox中必须存在某种安全设置,以防止文件:///链接来自外部内容吗?

6 个答案:

答案 0 :(得分:6)

只需使用

file:///
据我所知,

可以在IE,Firefox和Chrome中使用。

请参阅http://msdn.microsoft.com/en-us/library/aa767731(VS.85).aspx了解详情

答案 1 :(得分:4)

  

文件协议
  在本地或网络驱动器上打开文件。

     

语法

Copy
 file:///sDrives[|sFile]
Tokens 
     

sDrives
  指定本地或网络驱动器。

     

sFile
  可选的。指定要打开的文件。如果省略sFile并且访问驱动器的帐户有权浏览目录,则会显示可访问文件和目录的列表。

     

备注

     

可以省略文件协议和sDrives参数,并仅使用驱动器号和文件位置的命令行表示替换。例如,要浏览“我的文档”目录,可以将文件协议指定为file:/// C | / My Documents /或C:\ My Documents。此外,单个'\'相当于指定主本地驱动器上的根目录。在大多数计算机上,这是C:。

     

自Microsoft Internet Explorer 3.0或更高版本起可用。

     

注意Internet Explorer 6 Service Pack 1(SP1)不再允许从Internet区域浏览本地计算机。例如,如果Internet站点包含指向本地文件的链接,则当用户单击该链接时,Internet Explorer 6 SP1将显示空白页。以前版本的Windows Internet Explorer遵循指向本地文件的链接。

     

示例

     

以下示例演示了使用File协议的四种方法。

     

复制

//Specifying a drive and a file name. 

file:///C|/My Documents/ALetter.html

//Specifying only a drive and a path to browse the directory. 

file:///C|/My Documents/

//Specifying a drive and a directory using the command line representation of the directory location. 

C:\My Documents\

//Specifying only the directory on the local primary drive. 

\My Documents\

http://msdn.microsoft.com/en-us/library/aa767731

答案 2 :(得分:3)

您可以查看this link,或者尝试使用UNC路径。

答案 3 :(得分:0)

如果其他人在文件URI中使用localhost时发现此主题 - 如果主机名为localhost127.0.0.1,则Internet Explorer的行为完全不同 - 如果您使用实际主机名,它工作正常(来自可信站点/内部网区域)。

IE和FF之间的另一个重要区别 - IE与file://server/share/file.txt之类的uris一样好,但FF需要额外的斜杠file:////server/share/file.txt

答案 4 :(得分:0)

直接在链接按钮点击事件下粘贴以下链接,否则使用javascript调用函数背后的代码

Protected Sub lnkOpen_Click(ByVal sender As Object, ByVal e As EventArgs) 
    System.Diagnostics.Process.Start(FilePath)
End Sub

答案 5 :(得分:0)

至少使用Chrome,(我不了解Firefox)您可以将浏览器中URL左侧的图标拖到桌面上的文件夹位置,它会创建一个充当互联网快捷方式的文件

我不知道文件格式是否具有通用性,但Chrome似乎知道如何处理它。

生成的文件是.url文件,包含以下内容:

[InternetShortcut] URL=http://www.accordingtothescriptures.org/prophecy/353prophecies.html

您可以将网址替换为您想要的任何内容。