私はHtml5rocksチュートリアルに従っています
http://www.html5rocks.com/en/tutorials/file/dndfiles/
そして、ファイルの例をスライスする際に、readAsBinaryStringの代わりにreadAsArrayBufferを使用しようとしています(ファイルの解像度を見つけるためにgifヘッダーを読み取りたいため)。しかし、evt.target.result(readAsBinaryStringを使用している間は文字列です)が原因でスタックします
何か案は?
編集:コード
reader.onloadend = function(evt)
{
if (evt.target.readyState == FileReader.DONE) { // DONE == 2
document.getElementById('byte_content').textContent = evt.target.result;
console.log(evt.target.result.byteLenght)
document.getElementById('byte_range').textContent =
['Read bytes: ', start + 1, ' - ', stop + 1,
' of ', file.size, ' byte file'].join('');
}
};
if (file.webkitSlice) {
var blob = file.webkitSlice(start, stop + 1);
} else if (file.mozSlice) {
var blob = file.mozSlice(start, stop + 1);
}
reader.readAsArrayBuffer(blob);
}
そのため、Firefox 13では画面に表示されます:[object ArrayBuffer]
およびコンソールログ:未定義
Chromium 18にいる間、コンソールにアクセスします:Uncaught TypeError:nullのプロパティ'byteLenght'を読み取れません