HTML表單應該像下面。請注意,
類= 「懸浮窗」
和
ID = 「我-懸浮窗」
「我 - 懸浮窗」 ID是很重要的, DropZone將此視爲「myDropzone」(連字符已刪除並顯示)。所以當你在DropZone.options中引用這個ID時,它應該是「myDropzone」。這個非常重要。
<div>
<form action="/file-upload" class="dropzone" id="my-dropzone" style="border:2px dotted #337ab7">
<div class="dz-message">
Drag n drop photos here or click to upload.
<br />
<span class="note">(The photos are uploaded to twitter only when the tweet is sent.)</span>
</div>
</form>
</div>
你應該鏈接的CSS和JS文件在HTML頁面中,像這樣
<script src="./js/dropzone.min.js"></script>
<link href="./css/dropzone.min.css" rel="stylesheet" type="text/css">
在頁面加載,你應該初始化您的JS代碼的懸浮窗的配置爲你的頁面,如下。我限制dropzone只接受一個文件,其大小不應超過5MB。
self.options.maxFilesize = 5; self.options.maxFiles = 1;
Dropzone.autoDiscover = false;
Dropzone.options.myDropzone = {
init: function() {
var self = this;
// config
self.options.addRemoveLinks = true;
self.options.autoProcessQueue = false;
self.options.maxFilesize = 5;
self.options.maxFiles = 1;
self.options.dictFileTooBig =
"Twitter do not allow files greater than 5MB.";
//New file added
self.on("addedfile", function(file) {
console.log('new file added ', file.path);
});
self.on("maxfilesexceeded", function(file) {
alert(
"Only one photo can be attached with the tweet."
);
});
}
};
現在,當你的頁面加載,你會看到形式&得到拖N的你的DIV拖放功能。
要訪問這些文件,您可以在javascript中的某些按鈕單擊事件中執行下面的操作。
// to get queued files
var myDropzone = Dropzone.forElement("#my-dropzone");
var files = myDropzone.getQueuedFiles();