用于下载csv文件的Javascript不';我不能在FireFox中工作

用于下载csv文件的Javascript不';我不能在FireFox中工作,javascript,csv,Javascript,Csv,我有一个javascript用于转换数据并将其保存为csv文件。看起来是这样的: function downloadCSV(args) { var data, filename, link; var type = args.type; var fields = Object.keys(json_for_export[0]); var csv = json_for_export.map(function(row){ return fields.map

我有一个javascript用于转换数据并将其保存为csv文件。看起来是这样的:

function downloadCSV(args) {
    var data, filename, link;
    var type = args.type;
    var fields = Object.keys(json_for_export[0]);
    var csv = json_for_export.map(function(row){
        return fields.map(function(fieldName){
            return '"' + (row[fieldName] || '') + '"';
            });
        });
   csv.unshift(fields);
   csv = csv.join('\r\n')
   if (csv == null) return;
   filename = 'csv' + '_' + args.filename || 'export.csv';
   if (!csv.match(/^data:text\/csv/i)) {
            csv = 'data:text/csv;charset=utf-8,' + '\uFEFF' + csv;
   }
   data = encodeURI(csv);
   link = document.createElement('a');
   link.setAttribute('href', data);
   link.setAttribute('download', filename);
   link.click();
}
它在Chrome浏览器中运行良好,但在Firefox中不起作用。问题的原因是什么?
签入控制台后,数据被格式化为csv类型。

在单击DOM之前,需要将
A
元素附加到DOM中:

document.body.appendChild(link);
link.click();
之后,您可以立即将其移除:

document.body.removeChild(link);

在单击DOM之前,需要将
元素附加到DOM中:

document.body.appendChild(link);
link.click();
之后,您可以立即将其移除:

document.body.removeChild(link);

哪一版本的Firefox?你有任何控制台错误吗?downloadCSV是如何调用的?哪个版本的Firefox?您有任何控制台错误吗?下载CSV是如何调用的?2019年Firefox 67.0b11确认。谢谢2019年确认Firefox 67.0b11。谢谢