当前位置:主页 > javascript教程 > JS实现的文件拖拽上传功能示例

JS实现的文件拖拽上传的代码功能

发布:2020-02-09 15:03:53 199


给网友朋友们带来一篇javascript相关的编程文章,网友桓兴文根据主题投稿了本篇教程内容,涉及到JS、文件、拖拽上传、JS实现的文件拖拽上传功能示例相关内容,已被621网友关注,涉猎到的知识点内容可以在下方电子书获得。

JS实现的文件拖拽上传功能示例

本文实例讲述了JS实现的文件拖拽上传功能。分享给大家供大家参考,具体如下:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>www.jb51.net JS文件拖拽上传</title>
<style>
div{
 width: 300px;
 height: 300px;
 border:1px dashed #000;
 position:absolute;
 top: 50%;
 left: 50%;
 margin:-150px 0 0 -150px;
 text-align:center;
 font:20px/300px '微软雅黑';
 display:none;
}
</style>
<script>
 window.onload = function () {
  var oBox = document.getElementById('box');
  var oM = document.getElementById('m1');
  var timer = null;
  document.ondragover = function(){
   clearTimeout(timer);
   timer = setTimeout(function(){
    oBox.style.display = 'none';
   },200);
   oBox.style.display = 'block';
  };
  //进入子集的时候 会触发ondragover 频繁触发 不给ondrop机会
  oBox.ondragenter = function(){
   oBox.innerHTML = '请释放鼠标';
  };
  oBox.ondragover = function(){
   return false;
  };
  oBox.ondragleave = function(){
   oBox.innerHTML = '请将文件拖拽到此区域';
  };
  oBox.ondrop = function(ev){
   var oFile = ev.dataTransfer.files[0];
   var reader = new FileReader();
   //读取成功
   reader.onload = function(){
    console.log(reader);
   };
   reader.onloadstart = function(){
    alert('读取开始');
   };
   reader.onloadend = function(){
    alert('读取结束');
   };
   reader.onabort = function(){
    alert('中断');
   };
   reader.onerror = function(){
    alert('读取失败');
   };
   reader.onprogress = function(ev){
    var scale = ev.loaded/ev.total;
    if(scale>=0.5){
     alert(1);
     reader.abort();
    }
    oM.value = scale*100;
   };
   reader.readAsDataURL(oFile,'base64');
   return false;
  };
 };
</script>
</head>
<body>
<meter id="m1" value="0" min="0" max="100"></meter>
 <div id="box">请将文件拖拽到此区域</div>
</body>
</html>

使用http://tools.jb51.net/code/HtmlJsRun在线运行测试效果如下:

JS实现的文件拖拽上传功能示例

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript表单(form)操作技巧大全》、《JavaScript查找算法技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》、《JavaScript错误与调试技巧总结》及《JavaScript数学运算用法总结》

希望本文所述对大家JavaScript程序设计有所帮助。


参考资料

相关文章

  • 介绍vuejs使用FormData实现ajax上传图片文件的方法

    发布:2020-01-28

    本篇文章主要介绍了vuejs使用FormData实现ajax上传图片文件,具有一定的参考价值,有兴趣的可以了解一下


  • Nodejs观察者模式知识点详解

    发布:2020-02-04

    这篇文章主要介绍了浅谈Nodejs观察者模式的相关资料,需要的朋友可以参考下


  • JS实现的字符串数组去重功能小结

    JS实现的字符串数组去重功能小结

    发布:2022-06-17

    给大家整理一篇关于javascript的教程,这篇文章主要介绍了JS实现的字符串数组去重功能,结合实例形式分析了javascript基于ES6、ES5、ES3及正则实现数组去重的相关操作技巧,需要的朋友可以参考下


  • 在vs2010中,输出当前文件路径与源文件当前行号的解决方法

    发布:2022-04-03

    本篇文章是对在vs2010中,输出当前文件路径与源文件当前行号的解决方法进行了详细的分析介绍,需要的朋友参考下


  • js实现延迟加载的实例方法

    发布:2020-01-03

    本篇文章主要介绍了js实现延迟加载的几种方法,js的延迟加载有助与提高页面的加载速度,主要介绍了3种方法,有兴趣的可以了解一下


  • 利用Hook.php文件完成功能扩展的方法

    发布:2019-12-30

    这篇文章主要介绍了CI框架源码解读之利用Hook.php文件完成功能扩展的方法,分析了Hook的原理与扩展CI框架的相关技巧,需要的朋友可以参考下


  • Python中列出目录中的文件的五种方法小结

    发布:2023-03-23

    本文主要介绍了Python中列出目录中的文件的五种方法小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧


  • python 删除非空文件夹的代码

    发布:2020-02-02

    下面为大家分享一篇python 删除非空文件夹的实例,具有很好的参考价值,希望对大家有所帮助。一起过来看看吧


网友讨论