jQueryのdrop
イベントをデスクトップからファイルをドラッグするのに使用できますか?jQueryのドロップイベントを使用して、デスクトップからドラッグしたファイルをアップロードする方法はありますか?
もしそうなら、削除されたファイルデータを取得するにはどうすればよいですか?
jQueryのdrop
イベントをデスクトップからファイルをドラッグするのに使用できますか?jQueryのドロップイベントを使用して、デスクトップからドラッグしたファイルをアップロードする方法はありますか?
もしそうなら、削除されたファイルデータを取得するにはどうすればよいですか?
少し面倒です(少なくとも3つのイベントを処理する必要がありますが)。
まず、あなたはdragover
とdragenter
のためのEventHandlerを追加し、そのようなこれらのイベントのデフォルトのアクションを阻止する必要があります。
$('#div').on(
'dragover',
function(e) {
e.preventDefault();
e.stopPropagation();
}
)
$('#div').on(
'dragenter',
function(e) {
e.preventDefault();
e.stopPropagation();
}
)
次にドロップハンドラを追加し、e.originalEvent.dataTransfer.files
でドロップされたファイルにアクセスすることができます。
$('#div').on(
'drop',
function(e){
if(e.originalEvent.dataTransfer){
if(e.originalEvent.dataTransfer.files.length) {
e.preventDefault();
e.stopPropagation();
/*UPLOAD FILES HERE*/
upload(e.originalEvent.dataTransfer.files);
}
}
}
);
これで、divのデスクトップ/エクスプローラ/ファインダーからファイルをドラッグしてアクセスできるようになりました。あなたが必要な理由
の可能重複[jQueryを使ってHTML5のファイルAPIの例?](http://stackoverflow.com/questions/4722500/html5s-file-api-example-with-jquery) –