window.open用于本地文件路径

时间:2018-01-11 16:49:05

标签: javascript ecmascript-5 window.open

我想在本地的javascript中使用window.open()函数触发下载。 路径应以“/”开头。 我提供了带/开头的URL,但是,似乎window.open()函数忽略了第一个/。 有没有办法让它读取/,以便我可以触发下载?

3 个答案:

答案 0 :(得分:0)

/开头的网址是相对网址,其中包含绝对路径。它会忽略URL上的现有路径,并计算从端口开始的新路径(如果没有端口,则为主机名,在这种情况下为localhost)。

如果您想要对其他网址方案发出请求(在这种情况下为file:而不是http:),那么您需要使用绝对网址(即{ {3}})。

注意:出于安全原因,许多浏览器会阻止对由file:方案未提供的网页触发的file:方案网址的请求。

答案 1 :(得分:0)

试试这个:

window.open('file:///D:/Examples/file2.extension')

它适用于我的本地文件

答案 2 :(得分:0)

出于安全原因,浏览器禁止使用window.open()打开本地文件。

为了显示本地文件,您必须敦促用户手动选择要他们打开的文件。我知道这不是理想的解决方案,但它是如何工作的。 FileReader的一种实现方式是此答案:How to open a local disk file with JavaScript?