a标签实现文件流下载
方法1:
<a href="地址">download</a>
对于 txt , jpg , pdf 等浏览器支持直接打开的文件不会被执行下载,而是会直接打开,这时候一个新属性就要上场了–【download】
download属性不止可以实现下载,其属性值还可以规定下载时的文件名,如果不填写,会自动使用默认文件名。
<a href="地址" download="test.pdf">download</a>
很遗憾,兼容性不佳,本人实际测试结果也同上图一致。但是,虽然不兼容,但不代表完全不支持,IE 和 Safari 不会直接下载,但是会有下载提示框弹出,只是多绕了一步而已。如果不想借助后台而要实现文件下载,给a标签加download绝对是首选之策。
方法2:
const oa = document.createElement('a'); oa.href = url; oa.setAttribute('target', '_blank'); document.body.appendChild(oa); oa.click(); document.body.removeChild(oa);
方法3:
const parm = '\u003cscript\u003elocation.replace("' + url + '")\u003c/script\u003e'; const str = 'javascript:window.name;' window.open(str, parm);