Я использую HTML5 FileReader для чтения локального файла.Затем я хочу немедленно отобразить содержимое файла в браузере перед загрузкой на сервер.
Я читаю файл и пытаюсь отобразить его следующим образом:
var reader = new FileReader();
reader.onloadend = function () {
_moleculefilestream = reader.result;
_molecule.filename = filelist[0].name;
var filetype = _molecule.filename.substring(_molecule.filename.length - 3);
var html = '';
if (filetype == 'jpg' || filetype == 'gif' || filetype == 'png' || filetype == 'tif' || filetype == 'bmp') {
html += '<img src="' + reader.result + '" />';
}
else {
html += '<object id="zzzxxx" data="' + reader.result + '"';
if (filetype.toLowerCase() == 'pdf') {
// For pdf docs, specify a height and width
html += ' width="770" height="350"';
}
html += '>';
html += '</object>';
}
alert('we get here fine');
$('#molecule-docviewer').html(html);
alert('we have crashed by this point');
MarkMoleculeAsDirty();
}
reader.readAsDataURL(filelist[0]);
КогдаЯ загружаю PDF-файл размером до 1,5 МБ в Chrome, все работает нормально.Когда я пытаюсь загрузить файл размером 1,5 Мб или больше, Chrome (V15) вылетает с сообщением «aw snap».Он отображает сообщение «у нас все хорошо», но вылетает в следующей строке.
У кого-нибудь есть какие-нибудь блестящие идеи о том, как это исправить или обойти?Спасибо.