我想使用以下命令通过Javascript打开本地HTML文件:
window.open ("file://C:/Users/wins/Desktop/exclusiveWordpress.html","mywindow");
但它正在打开一个带有空白页面的新窗口,就像我们在未指定URL时所获得的那样。我如何实现这一目标?
答案 0 :(得分:3)
这对我很有用:
文件1:
<html>
<head></head>
<body>
<a href="#" onclick="window.open('file:///D:/Examples/file2.html'); return false">CLICK ME</a>
</body>
<footer></footer>
</html>
文件2:
<html>
...
</html>
无论2个文件是否在同一目录中,此方法都有效,但两个文件都必须是本地文件。
出于明显的安全原因,如果文件1位于远程服务器上,则绝对不能在某个客户端的主机上打开文件,尝试这样做会打开一个空白目标。
答案 1 :(得分:0)
window.location.href = 'file://///fileserver/upload/Old_Upload/05_06_2019/THRESHOLD/BBH/Look/chrs/Delia';
没有任何帮助。
答案 2 :(得分:-4)
首先,确保源页面和目标页面都通过file
URI方案提供。您无法强制http
页面打开file
页面(但它可以反过来工作)。
接下来,调用window.open()
的脚本应由用户启动的事件调用,例如点击,按键等。只需拨打window.open()
即可。
您可以在此问题页面中对此进行测试。在Chrome的JavaScript控制台中运行这些:
// Does nothing
window.open('http://google.com');
// Click anywhere within this page and the new window opens
$(document.body).unbind('click').click(function() { window.open('http://google.com'); });
// This will open a new window, but it would be blank
$(document.body).unbind('click').click(function() { window.open('file:///path/to/a/local/html/file.html'); });
您还可以测试这是否适用于本地文件。这是一个简单加载jQuery的示例HTML文件:
<html>
<head>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js"></script>
</head>
<body>
<h5>Feel the presha</h5>
<h3>Come play my game, I'll test ya</h3>
<h1>Psycho- somatic- addict- insane!</h1>
</body>
</html>
然后打开Chrome的JavaScript控制台并运行上述语句。第三个现在可以工作。