前端下载

简介: 这个只是前端下载的一些总结 具体的下载,可以看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 等



相关文章
|
5月前
|
JavaScript 前端开发
vue前端下载,实现点击按钮弹出本地窗口,选择自定义保存路径
这个不用代码实现(网上也找不到方法可以调出另存为窗口),更改浏览器设置就可以,否则,现在的浏览器都是默认直接保存到下载路径中
343 3
|
5月前
|
前端开发
前端接受后端文件流并下载到本地的方法
前端接受后端文件流并下载到本地的方法
1056 0
|
存储 监控 前端开发
前端文件流、切片下载和上传:优化文件传输效率与用户体验 【最全】
文件传输是一个常见的需求。对于大文件的下载和上传,直接使用传统的方式可能会遇到性能和用户体验方面的问题。幸运的是,前端技术提供了一些高效的解决方案:文件流操作和切片下载与上传。本文将深入探讨这些技术,帮助你理解它们的原理和实现方法,以优化文件传输效率和提升用户体验。
前端文件流、切片下载和上传:优化文件传输效率与用户体验 【最全】
|
12月前
|
Web App开发 移动开发 JavaScript
【前端用法】HTML5 Video标签如何屏蔽右键视频另存为的js代码以及如何禁用浏览器控件,Video 禁止鼠标右键下载
【前端用法】HTML5 Video标签如何屏蔽右键视频另存为的js代码以及如何禁用浏览器控件,Video 禁止鼠标右键下载
311 0
|
7天前
|
移动开发 前端开发 JavaScript
使用html-to-image代替html2canvas,结合jspdf实现下载pdf(下载截图下载前端dom元素)
本文介绍了在前端项目中,当使用`html2canvas`遇到问题时,如何使用`html-to-image`库作为替代方案,结合`jspdf`实现将DOM元素生成为PDF文件并提供下载。文章首先讨论了`html2canvas`可能遇到的问题,并提供了该库的使用示例代码。随后,详细介绍了`html-to-image`库的安装和使用方法,展示了如何将DOM元素转换为Canvas,再利用`jspdf`生成PDF文件。最后,文章通过示例代码说明了整个转换和下载的过程,并展示了效果截图。
9 0
|
2月前
|
JavaScript 前端开发 编译器
纯前端如何实现批量dom转图片,并下载成压缩包
【8月更文挑战第22天】纯前端如何实现批量dom转图片,并下载成压缩包
56 0
|
3月前
|
前端开发 JavaScript
前端 JS 经典:下载的流式传输
前端 JS 经典:下载的流式传输
44 1
|
3月前
|
前端开发
支付系统--微信支付21--搭建前端环境,payment-demo-front这个项目文件夹是前端显示文件,payment-demo是后端项目,支付页面常见三个页面:购买课程,我的订单,下载账单
支付系统--微信支付21--搭建前端环境,payment-demo-front这个项目文件夹是前端显示文件,payment-demo是后端项目,支付页面常见三个页面:购买课程,我的订单,下载账单
|
5月前
|
JSON Rust 前端开发
【sheetjs】纯前端如何实现Excel导出下载和上传解析?
本文介绍了如何使用`sheetjs`的`xlsx`库在前端实现Excel的导出和上传。项目依赖包括Vite、React、SheetJS和Arco-Design。对于导出,从后端获取JSON数据,通过`json_to_sheet`、`book_new`和`writeFile`函数生成并下载Excel文件。对于上传,使用`read`函数将上传的Excel文件解析为JSON并发送至后端。完整代码示例可在GitHub仓库[fullee/sheetjs-demo](https://github.com/fullee/sheetjs-demo)中查看。
284 10
|
5月前
|
前端开发 JavaScript
前端 JS 经典:文件流下载
前端 JS 经典:文件流下载
324 1
下一篇
无影云桌面