javascript - `a` 标记中的下载属性不起作用
问题描述
我使用 jquery 在我的代码中使用了下载属性。它不工作
data = /images/myw3schoolsimage.jpg
a = $('<a>').attr('href', data).attr('download', 'image.jpg').attr('id', 'sample').attr('target', '_blank').appendTo('body')
a[0].click()
a.remove()
其余的属性工作正常。但只有下载属性不起作用。
为什么我得到这个?
解决方案
Edge 版本 12、IE、Safari 10(及更早版本)或 Opera 版本 12(及更早版本)不支持下载属性。
它不起作用的一个原因是您的文件路径不正确。
检查您的文件是否存在。
这不是正确的语法
attr('download', 'image.jpg');
你应该这样做:
attr("download", true);
这是一个工作代码:
我使用了来自 w3schools 的示例图像
var data = 'https://www.w3schools.com/images/myw3schoolsimage.jpg';
var $a = $('<a />').appendTo('body');
$a.attr('id', 'sample');
$a.attr('href', data);
$a.attr("download", true);
$a.attr('target', '_blank');
$a[0].click();
$a.remove();
<html>
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
</head>
<body>
</body>
</html>
推荐阅读
- javascript - 未捕获的类型错误:无法读取 Cropper.zoomTo 处未定义的属性“宽度”
- vue.js - 无法使用 Vue-Chartjs(或任何其他插件)触发 beforeDraw
- node.js - npm 错误!cb.apply 不是函数
- javascript - Jquery在忽略类的同时获取文本
- html - 将几个表列分组并溢出到左侧
- connection-pooling - Reactive Mongo:已超过 500 的最大操作数 (maxQueueWaitSize)
- c# - System.Text.Json 对象数组反序列化
- c++ - 在循环c ++中限制fps
- javascript - 在我的 Bootstrap 3 测试站点中,本地文件有一个可用的汉堡菜单,但是当我使用 GitHub Pages 托管它时,导航栏不起作用
- php - 没有插件的WordPress弹出窗口