Javascript 从valums fileuploader中删除拖放
嘿,伙计们,在我最近的项目中,我使用valums文件上传器进行基于ajax的文件上传,因为我发现它最符合我的要求,但现在我被困在一个点上,那就是我想删除拖放功能,因为我在internet上搜索了数小时,但没有发现任何有用的东西。有没有办法从插件中删除这个部分?这是我的密码Javascript 从valums fileuploader中删除拖放,javascript,jquery,drag-and-drop,Javascript,Jquery,Drag And Drop,嘿,伙计们,在我最近的项目中,我使用valums文件上传器进行基于ajax的文件上传,因为我发现它最符合我的要求,但现在我被困在一个点上,那就是我想删除拖放功能,因为我在internet上搜索了数小时,但没有发现任何有用的东西。有没有办法从插件中删除这个部分?这是我的密码 uploader = new qq.FileUploader({ element: $('#file-uploader')[0], action: base_url
uploader = new qq.FileUploader({
element: $('#file-uploader')[0],
action: base_url + 'assets/scripts/server-side/server-side-uploader.php',
debug: true,
});
改用FileUploaderBasic。FileUploader实际上扩展了FileUploaderBasic,并添加了列表支持和拖放功能。FileUploaderBasic仅实现按钮和验证
var uploader = new qq.FileUploaderBasic({
// pass the dom node (ex. $(selector)[0] for jQuery users)
element: document.getElementById('file-uploader'),
// path to server-side upload script
action: '/server/upload'
});
如果您想使用FileUploaderBasic没有的其他一些功能(如列表),只需在fileupoader.js之后引用的单独JavaScript文件中扩展qq.FileUploaderBasic,如下所示:
var qq = qq || {};
qq.extend(qq.FileUploaderBasic.prototype, {
//override uploader stuff by just creating a function with the same name,
//like this function that creates the upload button
_createUploadButton: function(element){
var self = this;
//make whatever modifications you want here
return new qq.UploadButton({
element: element,
multiple: this._options.multiple && qq.UploadHandlerXhr.isSupported(),
onChange: function(input){
self._onInputChange(input);
}
});
}
});
您可以在没有拖放部分的情况下定义自己的模板,例如,我有:
template: '<div class="qq-uploader">' +
'<div class="qq-upload-drop-area"><span>Drop files here to upload</span></div>' +
'<div class="qq-upload-button">Upload Proof</div>' +
'<ul class="qq-upload-list"></ul>' +
'</div>',
模板:“”+
'将文件放在此处以上载'+
“上传证据”+
“
”+
'',
从模板中删除以下行以禁用拖放功能
'<div class="qq-upload-drop-area"><span>Drop files here to upload</span></div>' +
“将文件放在此处上载”+
我不同意这个问题的公认答案。在删除行的情况下
'<div class="qq-upload-drop-area"><span>Drop files here to upload</span></div>' +
这对我来说很好。没有错误,没有div块。这对我很有效
jQuery('.qq-upload-drop-area').remove();
只需将文本颜色设置为透明即可
.ajax__fileupload_dropzone {color:transparent;}
真正的解决方案是使用此库的最新版本,这将为您提供更多的控制(并添加许多功能和修复)。例如,FineUploader中有一些选项和API方法允许您完全删除删除区域,或添加多个删除区域。此确切场景包含在中。请同时对其进行注释/删除。_setupDragDrop();用于防止Javascript错误
.ajax__fileupload_dropzone {color:transparent;}
var uploader = new qq.FileUploader({
....
});
qq.attach(document, 'dragenter', function(e) {
$('.qq-upload-drop-area').hide();
});