需要知道的是,如果下载的是浏览器不能识别的(例如:.exe,.zip,.doc等)内容,浏览器会直接进行下载,但是如果下载的是浏览器可以识别的(例如:.png,.jpg等)内容,浏览器不会进行下载,而是进行打开预览。
1.1 直接使用download属性,属性值为下载文件的名字。
<a href="./企业综合信息系统插件的副本.zip" download="xxx.zip" >压缩包下载</a>
<a href="./img/开题报告.docx" download="xxx.zip" >docx文件下载</a>
1.2 使用window.href()
<a onclick="downloadFile()">下载文件</a>function downloadFile() {window.open(// './img/download.jpeg', //图片会直接打开预览'./img/组 5597_slices.zip','_target');
}
<a onclick="downImgFile()">下载图片</a>function downImgFile(){// content是图片的URL地址,// filename 是图片的名称(或者是你下载时候给定的名称)let content = './img/download.jpeg';let filename = '1.jepg'// 创建隐藏的可下载链接var eleLink = ateElement('a');eleLink.download = filename;eleLink.style.display = 'none';// 字符内容转变成blob地址var blob = new Blob([content]);eleLink.href = ateObjectURL(blob);// 触发点击document.body.appendChild(eleLink);eleLink.click();// 然后移除veChild(eleLink);
}
但是在vue项目中,会出现下载失败-未发现文件的错误。
正常情况下,我们习惯把下载的内容放在src下,这样下载的时候就找不见href里面的相对路径,我们可以把下载的内容放在public下,还有注意href里面的路径不要写成’…/…/public/xxx’,直接写成’./xxx’就可以了,就是index.html 相对于你下载内容放置的位置。
总结:
- 把下载内容放在public下面
- 路径写为’./public/xxx’
本文发布于:2024-01-31 18:55:18,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170669851630640.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |