美文网首页
js 下载文件

js 下载文件

作者: 一沭丶 | 来源:发表于2018-04-19 10:23 被阅读46次

网上的文章乱七八糟,还不支持 IE8,

这里整理了一下,支持 IE 浏览器,360浏览器,火狐,谷歌

当然最简单的其实是后端用流文件的方式给出链接,前端点击a标签直接就下载了(以前chrome浏览器下是这么做的,其他浏览器没测过)

    //url为文件链接地址如: http://xx.xx.com/music.mp3
    //docx类型也支持,其他类型没有测过
    function download(url) {
        //是否支持download属性
        //支持download属性的用download
        //不支持的用form表单
        var isDownLoad = 'download' in document.createElement('a');

        if(!isDownLoad) {
            var $form = $('<form method="GET"></form>');
            $form.attr('action', url);
            $form.appendTo($('body'));
            $form.submit();
            $form.remove();
        } else {
            var aLink = document.createElement('a');
            aLink.href = url;
            aLink.download =''; // HTML5新增的属性,可以指定保存文件名,可以不要后缀,注意,file:///模式下不会生效
            var event;
            if(window.MouseEvent) {
                event = new MouseEvent('click');
            } else {
                event = document.createEvent('MouseEvents');
                event.initMouseEvent('click', true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
            }
            aLink.dispatchEvent(event);
        }
    }

相关文章

  • laydate 时间选择器组建(一)

    效果图展示 需要引入的js文件 文件下载 html代码 js代码

  • js 文件下载

    项目中我们经常会遇到需要下载文件的功能,静态的文件资源可以使用 a 标签下载,动态的则需要我们通过 js 处理,s...

  • js文件下载

    var a = document.createElement('a');a.href = "url;a.downl...

  • js 下载 文件

    创建upload.js 文件 在需要下载的页面引入

  • js 文件 下载

  • js文件下载

    1.文件流下载 根据后台接口文件流下载 调用 2.文件地址下载 根据文件地址下载文件 调用 3.base64流下载...

  • js -文件下载

    纯前端实现 主要通过a标签的href属性来实现下载功能, download属性规定被下载的超链接目标;downlo...

  • 文件上传下载 antd Upload

    文件上传 antd Upload 入口 UploadUtil.js 文件下载 入口 FileUtil.js api...

  • Vue 使用axios

    1、下载axois 2、在src文件夹在创建http.js文件 3、在main.js 引入http.js文件

  • js-文件的上传和下载

    js-文件的上传和下载

网友评论

      本文标题:js 下载文件

      本文链接:https://www.haomeiwen.com/subject/cagikftx.html