前端下载

简介: 这个只是前端下载的一些总结 具体的下载,可以看node章节,有详细介绍

1.前言


这个只是前端下载的一些总结 具体的下载,可以看node章节,有详细介绍


2. a标签


a标签是最简单的下载方式  png txt jpg


<a href="01.doc" download="02.doc">下载doc</a>
    <a href="1.rar">下载压缩包文件</a>
    <a href="01.txt" >下载txt</a>
    <!-- 如果是图片  在此开启了 本地服务  download 属性如果是本地则无法实现更名  需要开启服务端  -->
    <a href="result.png" download="1.png">下载图片</a>
    <a href="https://codeload.github.com/douban/douban-client/legacy.zip/master">下载远程的文件,注意跨域问题</a>



3.location 下载



btn1.onclick = function () {
            window.location.href = "https://codeload.github.com/douban/douban-client/legacy.zip/master";
            // 两种都可以实现下载
            // window.open("https://codeload.github.com/douban/douban-client/legacy.zip/master");
        }



4.form下载



btn2.onclick = function () {
            let form = document.createElement("form");
            // 设置action属性
          form.setAttribute("action","https://codeload.github.com/douban/douban-client/legacy.zip/master");
            document.body.appendChild(form);
            // 记得提交
            form.submit();
            document.body.removeChild(form);
        }



5.下载数据



<img src="./result.png" alt="" id="img">


// 参数为: 内容 文件名
        function download1(content,fileName) {
            let el = document.createElement("a");
            // 指定文件名
            el.download = fileName;
            // 生成二进制数据的对象
            let blob = new Blob([content]);
            // 生成url
            let url = URL.createObjectURL(blob);
            el.href = url;
            el.click(); 
        }
        btn1.onclick  = function () {
            download1("这是我想下载的内容 。。。。","1.txt");
        }



6.canvas 图片下载



function download2(img,fileName) {
            let el = document.createElement("a");
             // 指定文件名
             el.download = fileName;
             let canvas = document.createElement("canvas");
             let ctx = canvas.getContext("2d");
             ctx.drawImage(img,0,0);
            //获得 base64 编码后的文件内容
            //  会出现跨域的问题 ! 记得该文件需要启动本地服务器
             let url = canvas.toDataURL();
             el.href = url;
            el.click();
        }
        btn2.onclick = function () {
            download2(img,"1.png");
        }



7.下载插件


文件下载

文件下载2

文件下载插件-1

文件下载插件-2

上传accept类型

文件上传

文件上传

FileReader对象文档

FileReader

FileReader

formData对象

formData ajax提交表单

form ajax

ajax上传显示进度

ajax-上传进度

ajax多张图片上传

还有百度的一些插件 Web Uploader 等



相关文章
|
7月前
|
JavaScript 前端开发
vue前端下载,实现点击按钮弹出本地窗口,选择自定义保存路径
这个不用代码实现(网上也找不到方法可以调出另存为窗口),更改浏览器设置就可以,否则,现在的浏览器都是默认直接保存到下载路径中
582 3
|
7月前
|
前端开发
前端接受后端文件流并下载到本地的方法
前端接受后端文件流并下载到本地的方法
1601 0
|
Web App开发 移动开发 JavaScript
【前端用法】HTML5 Video标签如何屏蔽右键视频另存为的js代码以及如何禁用浏览器控件,Video 禁止鼠标右键下载
【前端用法】HTML5 Video标签如何屏蔽右键视频另存为的js代码以及如何禁用浏览器控件,Video 禁止鼠标右键下载
364 0
|
1月前
|
前端开发 API
前端界面生成PDF并导出下载
【10月更文挑战第21天】利用合适的第三方库,你可以在前端轻松实现界面生成 PDF 并导出下载的功能,为用户提供更方便的文档分享和保存方式。你还可以根据具体的需求进一步优化和定制生成的 PDF 文件,以满足不同的业务场景要求。
|
2月前
|
前端开发 JavaScript
💥【exceljs】纯前端如何实现Excel导出下载和上传解析?
本文介绍了用于处理Excel文件的库——ExcelJS,相较于SheetJS,ExcelJS支持更高级的样式自定义且易于使用。表格对比显示,ExcelJS在样式设置、内存效率及流式操作方面更具优势。主要适用于Node.js环境,也支持浏览器端使用。文中详细展示了如何利用ExcelJS实现前端的Excel导出下载和上传解析功能,并提供了示例代码。此外,还提供了在线调试的仓库链接和运行命令,方便读者实践。
370 5
|
2月前
|
JavaScript 前端开发 编译器
吐血整理:纯前端如何实现批量dom转图片,并下载成压缩包
【10月更文挑战第2天】吐血整理:纯前端如何实现批量dom转图片,并下载成压缩包
58 2
|
2月前
|
资源调度 前端开发 安全
前端实战:基于Verdaccio搭建私有npm仓库,轻松上传与下载自定义npm插件包
前端实战:基于Verdaccio搭建私有npm仓库,轻松上传与下载自定义npm插件包
112 0
|
3月前
|
移动开发 前端开发 JavaScript
使用html-to-image代替html2canvas,结合jspdf实现下载pdf(下载截图下载前端dom元素)
本文介绍了在前端项目中,当使用`html2canvas`遇到问题时,如何使用`html-to-image`库作为替代方案,结合`jspdf`实现将DOM元素生成为PDF文件并提供下载。文章首先讨论了`html2canvas`可能遇到的问题,并提供了该库的使用示例代码。随后,详细介绍了`html-to-image`库的安装和使用方法,展示了如何将DOM元素转换为Canvas,再利用`jspdf`生成PDF文件。最后,文章通过示例代码说明了整个转换和下载的过程,并展示了效果截图。
138 0
|
4月前
|
JavaScript 前端开发 编译器
纯前端如何实现批量dom转图片,并下载成压缩包
【8月更文挑战第22天】纯前端如何实现批量dom转图片,并下载成压缩包
105 0
|
5月前
|
前端开发 JavaScript
前端 JS 经典:下载的流式传输
前端 JS 经典:下载的流式传输
69 1