2011-08-07 14 views
3

ChromeとFirefoxでうまく動作するドラッグ&ドロップアップロードスクリプトがあります。ただし、Safariでは、ファイルサイズの取得に問題があります。それはファイルサイズの0バイトを返しますが、不思議なことに、ときどき正しいファイルサイズを返します。これは10回に1回程度です。SafariのHTML5ファイルAPIサイズの問題

私はそうのようなドロップイベントを経由してファイルの一覧を取得しています:

var files = event.dataTransfer.files; 
alert(files[0].size); 

とサイズメソッドを使用しようとしたとき、私はお返しに0バイトを取得します。誰がなぜこれが起こっているのか知っていますか?

答えて

1

ファイルapiは標準と少し異なります。 Safari 6はこれを変更します。

出典:http://www.thebuzzmedia.com/html5-drag-and-drop-and-file-api-tutorial/

Safariの実装では、しかし、いくつかの奇妙なバグがあります。時折、私はあなたの最初の落としが失速し、通過しないかもしれないというこの機能の私自身の使用に気づいた。アップロードを完了する前に空白のページに単純な非同期要求を追加すると、そのバグを打ち負かすようです。

サファリガイド5:http://www.deadmarshes.com/Blog/20110413023355.html