加载页面时开始下载文件
Start Downloading a File When Page is Loaded
页面加载完成后,我希望它在新的选项卡/窗口中打开第二个页面,开始下载文件。我的代码如下:
<html>
<head>
<input type="hidden" id="start_download" onclick="parent.window.open('https://googledrive.com/host/xxxxx', '_blank');">
</head>
<body onload="startDownload()">
<script type="text/javascript">
function startDownload() {
alert('Downloading...');
document.getElementById('start_download').click();
}
</script>
</body>
</html>
这段代码在iFrame中,BTW。当我测试它时,我知道该功能正在执行,因为它显示了警报,但它并没有像我预期的那样打开选项卡并开始下载。
这是由于浏览器的安全功能不允许假点击来打开新窗口。会检查单击事件的上下文,如果检测到它是伪造的,则不会触发它的操作。似乎有一种使用ajax的方法可以做到这一点,但您必须四处搜索。
当然,如果你的目标只是触发文件下载,而不需要新窗口,只需创建一个隐藏的iframe,并在加载时将其url指向你想要下载的文件。
相关文章:
- 如何在生成下载文件时显示加载动画
- 直接下载文件,而不是从window.open(url)
- Javascript运行php文件,然后下载文件
- 在单击href链接的同时下载文件
- 通过javascript下载文件时设置文件名
- HTML锚标记无法在android平台中下载文件
- 链接/按钮从子文件夹下载文件--浏览器只是浏览
- iPhone强制下载文件
- 正在下载文件,同时加载另一个页面
- 如何在node.js中只下载文件的前10 KB
- 如何使用XMLHttpRequest下载文件
- 使用angular js在前端下载文件
- 使用blob从ajax结果下载文件
- 通过Android Chrome浏览器下载文件
- 使用AJAX下载文件.来自SD卡
- 如何使用phonegap从android中的URL下载文件
- 使用ajax下载文件
- 无法使用Angular JS和spring MVC打开下载文件
- 无法使用API-node.js从Google Drive下载文件
- 点击jQuery按钮下载文件