如何使用 window.open() 下载文件?使用window.open()方法下载文件的步骤如下:
1.创建一个隐藏的iframe元素
const iframe = document.createElement('iframe');
iframe.style.display = 'none';
document.body.appendChild(iframe);
2.将iframe的src属性设置为文件的URL地址,并指定'_blank'参数以在新窗口中打开链接:
iframe.src = 'your_file_url';
3.等待一段时间,使浏览器能够开始下载文件。您可以使用setTimeout函数来延迟执行下一步操作:
setTimeout(() => {
// 在这里执行你的逻辑代码
}, 5000); // 等待5秒钟
4.从iframe元素中删除文件链接,并将iframe元素从文档中移除,以便在下载完成后释放内存:
iframe.contentWindow.document.write('');
iframe.contentWindow.close();
document.body.removeChild(iframe);
完整代码示例:
function downloadFile(url) {
const iframe = document.createElement('iframe');
iframe.style.display = 'none';
document.body.appendChild(iframe);
iframe.src = url;
setTimeout(() => {
iframe.contentWindow.document.write('');
iframe.contentWindow.close();
document.body.removeChild(iframe);
// 在这里执行你的逻辑代码
}, 5000);
}
downloadFile('your_file_url');
请注意,由于浏览器的安全限制,您只能使用window.open()方法下载与当前网站同源的文件,或者是服务器返回正确的CORS头信息的文件。否则,浏览器会阻止下载并显示安全提示。
未经允许不得转载:国外服务器评测 » 如何使用 window.open() 下载文件