まず、Dropzone.jsをウェブページに組み込む必要があります。CDNからDropzone.jsを読み込むか、プロジェクトにパッケージとして追加する方法があります。以下の例では、CDNからDropzone.jsを読み込む方法を示します。
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/dropzone/5.9.2/min/dropzone.min.css" />
</head>
<body>
<form id="my-dropzone" class="dropzone">
<div class="fallback">
<input name="file" type="file" multiple />
</div>
</form>
<script src="https://cdnjs.cloudflare.com/ajax/libs/dropzone/5.9.2/min/dropzone.min.js"></script>
</body>
</html>
上記のコードでは、<form>
要素にdropzone
クラスを追加してDropzone.jsを有効にします。また、<input>
要素をフォールバックオプションとして追加しています。これにより、Dropzone.jsがサポートされていないブラウザでも通常のファイルアップロードができるようになります。
次に、ダウンロードボタンを追加するために、Dropzone.jsのaddedfile
イベントを使用します。以下のコードは、ファイルが追加されたときにダウンロードボタンを表示する方法を示しています。
Dropzone.options.myDropzone = {
init: function() {
this.on("addedfile", function(file) {
var downloadButton = Dropzone.createElement("<a>Download</a>");
downloadButton.href = file.dataURL;
downloadButton.download = file.name;
file.previewElement.appendChild(downloadButton);
});
}
};
上記のコードでは、init
メソッド内でaddedfile
イベントを監視しています。ファイルが追加されるたびに、Dropzone.createElement
を使用してダウンロードボタンの要素を作成し、ファイルのデータURLとファイル名を設定しています。そして、ダウンロードボタンをファイルのプレビュー要素に追加しています。
これで、Dropzone.jsを使用してファイルのダウンロードボタンを追加する方法がわかりました。これを応用して、さまざまなウェブ開発プロジェクトでファイルのアップロードとダウンロードをシンプルかつ簡単に実装することができます。是非お試しください!