转行学开发,代码100天——2018-04-10

今天记录一个利用JavaScript实现文件拖拽上传到浏览器,后天将文件打开的小案例。

基本功能:1点击添加文件 2 文件拖拽添加

html:

<div id="box">
<span id="span">选择或拖放文件</span>
<input id="browse" type="file">
</div>

css:

      #box{
position: relative;
border:3px dashed #ddd;
width: 200px;
height: 70px;
text-align: center;
line-height: 70px;
cursor: pointer;
}
#box input{
position: absolute;
top:;
left:;
width: 100%;
height: 100%;
opacity:;
cursor: pointer;
}
#box.hover{
border:3px solid #999;
}

javascript:

<script type="text/javascript">
var box = document.getElementById("box");
var input = document.getElementById("browse");
var span = document.getElementById("span");
//box 事件
box.ondragover = function()
{
this.className = "box hover"; }
box.ondragleave = function()
{
this.className = "box";
} //input 事件 input.ondragover = function(e)
{
e.preventDefault(); }
input.ondrop = function(e)
{
e.preventDefault();
box.className = "box";
var file = e.dataTransfer.files[0];
show(file);
}
input.onchange = function()
{
var file = this.files[0];
show(file);
}
function show(file)
{
span.innerHTML = file.name;
var fr = new FileReader();
fr.onload = function()
{
var result = this.result;
console.log(result);
}
fr.readAsText(file);
} </script>

案例效果:

day25—JavaScript实现文件拖拽上传案例实践的更多相关文章

  1. html5 文件拖拽上传

    本文首先发表在  码蜂笔记 : http://coderbee.net/index.php/web/20130703/266 html5 文件拖拽上传是个老话题了,网上有很多例子,我一开始的代码也是网 ...

  2. php和js实现文件拖拽上传

    Dropzone.js实现文件拖拽上传 http://www.sucaihuo.com/php/1399.html demo http://www.sucaihuo.com/jquery/13/139 ...

  3. Dropzone.js实现文件拖拽上传

    dropzone.js是一个开源的JavaScript库,提供 AJAX 异步文件上传功能,支持拖拽文件.支持最大文件大小.支持设置文件类型.支持预览上传结果,不依赖jQuery库. 使用Dropzo ...

  4. HTML5应用之文件拖拽上传

    使用HTML5的文件API,可以将操作系统中的文件拖放到浏览器的指定区域,实现文件上传到服务器.本文将结合实例讲解HTML5+jQuery+PHP实现拖拽上传图片的过程,来看下HTML5的魅力吧. H ...

  5. Dropzone.js文件拖拽上传提示Dropzone already attached 解决

    最近收到客户的反馈,在操作上传文件有时会出现没有任何.大部分时间是正常. 重现问题后,f12打开后台控制台发现如下提示: Uncaught Error: Dropzone already attach ...

  6. SpringMvc+jQuery 文件拖拽上传、选择上传

    最近做了个简易的基于boostrap的文件上传功能,jsp版本的,后续会完善更多的功能,不过现在已经能用了,需要的小伙伴,直接引用下面的文件内容直接copy到自己的项目中就ok了,效果如图: file ...

  7. HTML5文件拖拽上传记录

    JS文件: var FileName = ""; var FileStr = ""; (function () { function $id(id) { ret ...

  8. 使用bootstrap fileinput多文件拖拽上传的记录

    今天琢磨文件上传,刚好看到bootstrap 我就搜了一下,刚刚能满足需求,使用上手也很快,使用完还是记录下来. 1.首先我们下载插件包,可以用nuget搜索bootstrap-fileinput 也 ...

  9. JavaScript 文件拖拽上传插件 dropzone.js 介绍

    http://www.renfei.org/blog/dropzone-js-introduction.html

随机推荐

  1. [随笔重写] Python3 的深拷贝与浅拷贝

    1. Python3 关于深浅拷贝的官方文档 文档地址:Python3.7.2 源码地址:lib/copy.py 2. 先说结论 深拷贝与浅拷贝是对复合对象而言的 深拷贝会构造一个新的复合对象,然后递 ...

  2. 通过document.domain实现跨域访问

    通过document.domain实现跨域访问:https://blog.csdn.net/nlznlz/article/details/79506655 前端跨域方法之document.domain ...

  3. JavaScript基础9——操作DOM树

    appendChild()方法:添加子节点到末尾 类似于剪切粘贴的效果   insertBefore(newNode, oldNode)方法:在某个节点之前插入一个节点 newNode为要插入的节点, ...

  4. vim插件YouCompleteMe安装

    这里在ubuntu16.4下安装的需要提前安装cmake clang python3sudo apt-get install clang  因为不能访问google,安装时,安装go的插件会访问goo ...

  5. 定时器,定时发邮件JavaMail

    一.定时器用法: 1.1先导入jar包 <!--spring整合其他文件时要用的jar包--> <dependency> <groupId>org.springfr ...

  6. 09.Linux系统由于不正常关机导致的分区问题

    问题:Error:UNEXPECTED INCONSISTENCY: RUN fsck MANUALLY Give root password for maintenance ------------ ...

  7. Python开发—打包成exe

    pychaim下PyInstaller 打包 python程序 使用PyCharm开发python Pyinstaller打包jieba项目相关解决方案 Python打包成exe 一.安装pyinst ...

  8. visual studio 中添加命令行参数

    argc argv

  9. Linux shell中自动完成登录

    在写shell脚本时,需要登录到不同的服务器上执行相关命令,在未建立信任之前如何批量操作. 1.ssh 首次登录服务器时会提示RSA key fingerprint输入yes/no,可以通过下面的方法 ...

  10. CF1090J Two Prefixes

    神仙题++ 还是在某校梁大讲的题qaq 我们考虑容斥 也就是本质不同字串=全部-重复的 我们只需要求重复的即可 考虑相同的s=ab 我们用长度最长的a作为代表串 如果存在一个a'b'且|a'|> ...