0
我在malan noob中使用javascript
所以我很抱歉,如果我的问题是简单的。无论如何, 我正在写一个代码创建一个批处理文件以便打开某个文件由操作系统定义的默认应用程序例如PDF文件将在Adobe公司的Acrobat Reader中打开要做到这一点,我使用的是FileSaver.jsJavascript - 下载自己创建的批处理文件的提示
而且我的代码是这样的:。
$(document).ready(function() {
$('#openPdf').click(function() {
saveAs(data2blob(
myPDF),
'openPDF.bat');
});
});
function data2blob(data, isBase64) {
var chars = "";
if (isBase64)
chars = atob(data);
else
chars = data;
var bytes = new Array(chars.length);
for (var i = 0; i < chars.length; i++)
bytes[i] = chars.charCodeAt(i);
var blob = new Blob([new Uint8Array(bytes)],
{type: "text/plain;charset=utf-8"});
return blob;
}
与myPDF
是我想打开的特定文件的字符串,我确定它的存在。当我在IE上测试我的代码时,它完美地工作。但是,当我在Firefox上尝试时,创建的文件是'openPDF.bat.sdx'而不是'openPDF.bat'。我已经检查过,确实只有添加的扩展名才是相同的文件。有没有人有一个想法是什么原因呢?我该如何克服它?