我创建的功能适用于Chrome,Firefox和Safari,但我对为什么它不适用于iPhone感到困难。这是我的代码:
downloadCSV = function(content, fileName, mimeType) {
var a = document.createElement('a');
mimeType = mimeType || 'application/octet-stream';
if (navigator.msSaveBlob) { // IE10
navigator.msSaveBlob(new Blob([content], {
type: mimeType
}), fileName);
} else if (URL && 'download' in a) { //html5 A[download]
a.href = URL.createObjectURL(new Blob([content], {
type: mimeType
}));
a.setAttribute('download', fileName);
document.body.appendChild(a);
a.click();
document.body.removeChild(a);
} else {
location.href = 'data:application/octet-stream,' + encodeURIComponent(content); // only this mime type is supported
}
}
在提到的所有浏览器上,它都能成功转换为可下载的csv,但对于iphone,它将变成一个.txt文件,其中包含csv的字符串。我希望这里的人遇到类似的问题,并且能够提出解决方案。