var saveData = (function () {
var a = document.createElement("a");
document.body.appendChild(a);
a.style = "display: none";
return function (data, fileName) {
var json = JSON.stringify(data),
blob = new Blob([json], {type: "octet/stream"}),
url = window.URL.createObjectURL(blob);
a.href = url;
a.download = fileName;
a.click();
window.URL.revokeObjectURL(url);
};
}());
var data = { x: 42, s: "hello, world", d: new Date() },
fileName = "my-sample.json";
saveData(data, fileName);
以上在chrome和firefox中运行良好,而不是在safari中,因为下载属性不是由safari支持,还有其他想法可以克服这个问题吗?
答案 0 :(得分:1)
我做了一个快速研究 - 我看起来Safari不支持你想要实现的目标。
您的解决方案在Chrome(和Firefox)中运行的原因是它们支持下载属性 - Safari尚未支持。