「ドラッグ&ドロップ」もしくは「ファイル選択ダイアログ」を通してファイルをアップロードするWebサービスがあります(念のためサイト名を明らかにしておいたほうがよいのであれば、『livedoor blog』の管理画面です)。
そこへ、自分用に作ったTampermonkeyのユーザースクリプトを使って自動でファイルをアップロードしたいのですが……
アップロードしたいローカルファイルのパスをどうにかそのサイトに渡して、「まるでそのファイルがドロップされたかのような」あるいは「まるでそのファイルがダイアログで選択されたかのような」動作をさせることは可能でしょうか?
できるだけダイアログは開かずに静かにアップロードされてほしいので、ドロップのほうでどうにかできれば良いのですが……
(あるいはダイアログを開かずとも<input type="file">のvalueの値を変更できればいいのかもしれませんが、どうやらそれはセキュリティの関係上できないようですね)
アップロード用ページのJavascriptソースを読んで「drop」で検索してみたところうまく読み解けなかったものの、もしかしたらNucleus CMSのNP_DragAndDropUploader.phpというプラグインによるものかもしれません。
いずれにせよhtml的には
HTML
1<div class="drop"></div> (仮)
的な箇所が用意されているので、ここへファイルに見せかけた何か(ローカルファイルのパス)をjQueryの
jQuery
1trigger('drop', )
ないしネイティブJSの
JavaScript
1dispatchEvent('drop', )
などで渡してやれば行けるのではないかと思うのですが……
まだあまりJavaScriptには慣れていないため、ここから先をどうすればいいかがわかりません。dropだけでなくdrag~系の処理も必要なのかも、とも思います。
この考え方で合っているでしょうか?
それともやはりドラッグ&ドロップに関しても、セキュリティの関係でユーザーの操作がないかぎり無理なのでしょうか?
(livedoor blogということでFile Manager APIを通せばよいのかもしれませんが、curlなど難しそうでしたのでまずJavaScriptでどうにかできないかと思い)
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/11/28 04:26