html5 + javascript + node-webkitでアプリを作っています。
そこでご質問ですが、アプリケーション側からローカル(例えばデスクトップ)へ複数のファイルをドラッグ&ドロップすることは可能でしょうか?
現状ではjavascriptのDataTransfer.setDataメソッドを使っております。しかしDataTransfer.setDataメソッドの場合、指定したタイプ名が同じ場合は、過去に指定したファイルが上書きされてしまい、一つのファイルしか渡せません。
複数のファイルを上手く渡す方法はないでしょうか?何かよい方法がございましたらアドバイスを宜しくお願いいたします。
コードの例ですが、ファイル 1.file, 2.file, 3.fileをa#allDragからドラッグを行い、前述のファイルをまとめてデスクトップへドロップしたいと思っています。
lang
1<a data-downloadurl="application/octet-stream:1.file:./1.file" href="./1.file" id="list1">file1</a> 2<a data-downloadurl="application/octet-stream:2.file:./2.file" href="./2.file" id="list2">file2</a> 3<a data-downloadurl="application/octet-stream:3.file:./3.file" href="./3.file" id="list3">file3</a> 4<a href="#" id="allDrag" ondragstart="startDrag(event);">まとめてドラッグ</a>
lang
1function startDrag (event) { 2 3 var fileList = []; 4 fileList[0] = $("#list1").attr("data-downloadurl"); 5 fileList[1] = $("#list2").attr("data-downloadurl"); 6 fileList[2] = $("#list3").attr("data-downloadurl"); 7 8 event.dataTransfer.setData("DownloadURL",fileList[0]); 9 //上記で複数ファイルを渡したいです。(現状単体のファイルしか指定できません) 10 11}
あなたの回答
tips
プレビュー