• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
lizimeme
博客园    首页    新随笔    联系   管理    订阅  订阅
js实现多文件上传(二)-- 拖拽上传

演示地址

html:

<form >
    <div class="drag-wrapper">
        请将图片拖到此处
    </div>
</form>

css:

<style>
     .drag-wrapper{
         width:100%;
         height: 300px;
         border: 4px dashed lightblue;
         text-align: center;
         line-height: 300px;
         color: lightgrey;
     }
        .drag-wrapper img{
            max-width: 80px;
        }
    </style>
View Code

js:

<script src="../js/jquery-2.2.3.min.js"></script>
<script>
 $('.drag-wrapper').on('dragover',function(event){
      event.preventDefault()
 }).on('drop',function(event){

     event.preventDefault();
     //数据在event的dataTransfer对象里
     let file = event.originalEvent.dataTransfer.files[0];
     //同样用fileReader实现图片上传
     let fd = new FileReader();
     let fileType = file.type;
     fd.readAsDataURL(file);
     fd.onload = function(){
          if(/^image\/[jpeg|png|gif|jpg]/.test(fileType)){
              $('.drag-wrapper').append('<img src="'+this.result+'"/>')
          }else{
              alert('仅支持拖拽图片')
          }
     }
     let formData = new FormData();
     formData.append('file',file);

 })
</script>

 预览:

 

Live and learn ;)
posted on 2017-12-22 17:23  lizimeme  阅读(1686)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3