blog
blog copied to clipboard
下载 导出 download
- 弹窗另存为
Content-Disposition: inline // 默认值,表示回复中的消息体会以页面的一部分或者整个页面的形式展示 Content-Disposition: attachment // 意味着消息体应该被下载到本地;大多数浏览器会呈现一个“保存为”的对话框,将 filename 的值预填为下载后的文件名,假如它存在的话 Content-Disposition: attachment; filename="filename.jpg"
- 当前页面直接下载
export function download(url) {
const iframe = document.createElement("iframe");
iframe.style.display = "none";
function iframeLoad() {
const win = iframe.contentWindow;
const doc = win.document;
if (win.location.href === url) {
if (doc.body.childNodes.length > 0) {
// response is error
}
iframe.parentNode.removeChild(iframe);
}
}
if ("onload" in iframe) {
iframe.onload = iframeLoad;
} else if (iframe.attachEvent) {
iframe.attachEvent("onload", iframeLoad);
} else {
iframe.onreadystatechange = function onreadystatechange() {
if (iframe.readyState === "complete") {
iframeLoad();
}
};
}
iframe.src = "";
document.body.appendChild(iframe);
setTimeout(function loadUrl() {
iframe.contentWindow.location.href = url;
}, 50);
}