Я «ma 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». Я проверил, что это действительно тот же файл только с добавленным расширением. Кто-нибудь есть идея, в чем причина этого? и как я могу его преодолеть?