纯 js 实现上传文件支持拖拽
2018-06-24 02:16:53来源:未知 阅读 ()
开发「bufpay.com 个人即时到账收款平台」 后台需要支持开发者的微信和支付宝二维码上传。
<p> <button class="btn btn-primary" onClick="javascript:document.getElementById('fileupload').click();">批量上传微信/支付宝支付二维码</button> <input style="display:none;" id="fileupload" type="file" name="file" accept="image/*" multiple> </p>
原来的方式是点击 button 触发一个 隐藏的 file 的 onchange 事件,从而弹出文件选择框,选择文件。
但是有用户反馈直接拖动收款二维码进去会方便一些。于是,修改原代码,在 js 文件中添加
<p id="drop_area" onClick="javascript:document.getElementById('fileupload').click();"> <button class="btn btn-primary">批量上传微信/支付宝支付二维码</button> <input style="display:none;" id="fileupload" type="file" name="file" accept="image/*" multiple> </p>
var dp = document.getElementById('drop_area'); dp.addEventListener('dragover', function(e) { e.stopPropagation(); e.preventDefault(); e.dataTransfer.dropEffect = 'copy'; }); dp.addEventListener("drop", function(e) { e.stopPropagation(); e.preventDefault(); var files = e.dataTransfer.files; // do something upload });
把 button 的上一级 p 作为一个 drop area 添加监听 dragover 和 drop 事件,在 drop 事件里面对拖动的文件进行操作即可。
插播广告 ?(? ? ??)嘿嘿
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:运算符基础知识——比较运算符
下一篇:事件代理 方式百度换皮肤
- js防止表单重复提交实现代码 2020-03-29
- 基于JQuery的多标签实现代码 2020-03-29
- js实现翻页后保持checkbox选中状态的实现方法 2020-03-25
- NiftyCube实现圆角边框的方法 2020-03-20
- 根据分辨率调用css文件的方法 2020-03-19
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash