我有这个 js 函数,它可以在 IE 和 firefox 上正常工作,但不能在 chrome 上工作。它应该在 Chrome 和 Firefox 中提供下载窗口,但在 IE 中弹出-
JS 函数 -
function downloadCSV() {
var isIE = false;
//Download if browser is not IE, otherwise show popup
if (isIE) {
$('#searchInfo').TableCSVExport(
{delivery:'popup' });
} else {
var csv = $('#searchInfo').TableCSVExport(
{delivery:'value' });
var blob = new Blob([csv], {type: DOWNLOAD_TYPE});
saveAs(blob, DOWNLOAD_NAME);
}
}
我这样调用它 -
<a id="csvLink" href="javascript:downloadCSV()">Download</a>
在 Firefox 和 IE 中,它工作正常,但在 Chrome 中,它在控制台中显示以下错误 -
Uncaught TypeError: Illegal constructor
downloadCSV
(anonymous function)
有什么想法吗?
最佳答案
某些版本的 Chrome 存在损坏的 BlobBuilder
https://github.com/liftoff/GateOne/issues/132
那里提到的版本是:Chrome 18.0.1025.168(开发者版本134367 Linux)Ubuntu 12.04
如果您打开 Chrome 并按 F12,然后在控制台中输入
var b = new Blob();
这会引发错误吗?如果是这样,那么它是由该特定版本的 chrome 中损坏的 BlobBuilder 引起的
关于javascript - JS 函数在 firefox 和 IE 上工作正常,但在 chrome 上不行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16395858/