Web存储及文件拖拽
存储
实现内容的永久保存(localStorage)
保存:
localStorage.自定义键名="123";
获取:
//判断是否有内容
if(localStorage.自定义键名){
//显示内容
alert(localStorage.自定义键名);
}
只在当前页面存储(sessionStorage)
保存和获取方法与上相同
缓存
CACHE MANIFEST在该标题下列出的文件将会在首次进行缓存
NETWORK 在该标题下的文件将不进行缓存
FALLBACK在该标题下的文件将会在规定页面无法访问时跳转的其它页面
开启缓存:
在html标签中添加属性manifest,并指定值为文件名
<html manifest="dongcache.appcache">
设置缓存:
创建dongcache.appcache文件
CACHE MANIFEST CACHE:
kk.html
dong.css
dong.js NETWORK: FALLBACK:
文件拖拽
实现本地图片拖拽并预览
var divobjx=document.getElementsByTagName("div")[0];
//屏蔽系统默认事件
divobjx.ondragover=function(e){
e.preventDefault();
}
//监听拖拽事件
divobjx.ondrop=function(e){
e.preventDefault();
var f=e.dataTransfer.files[0];//得到文件对象
alert(f.name+"***"+f.size+"***"+f.type);//得到文件信息
var fr=new FileReader();
fr.onload=function(e){
divobjx.innerHTML="<img src='"+fr.result+"'\>";
alert(fr.result);
}
fr.readAsDataURL(f);
}
表单文件内容获取:
<input type="file" name="setfilex" />
<script>
var ffobjx=document.getElementsByName("setfilex")[0];
ffobjx.onchange=function(){
f=ffobjx.files[0];
alert(f.name+"****"+f.size+"*****"+f.type);
}
</script>
综合代码
文件上传(选择文件和拖拽文件)预览和设置到form表单上

var ffobjx=document.getElementsByName("setfilex")[0];//得到文件表单对象 (input)
//监听文件表单的内容改变
ffobjx.onchange=function(){
f=ffobjx.files[0];
showfile(f);
//alert(f.name+"****"+f.size+"*****"+f.type);
}
var divobjx=document.getElementById("filediv");//得到文件拖拽框对象
//屏蔽系统默认事件
divobjx.ondragover=function(e){
e.preventDefault();
}
//监听拖拽事件
divobjx.ondrop=function(e){
e.preventDefault();
var f=e.dataTransfer.files[0];//得到文件对象
ffobjx.files=e.dataTransfer.files;//将拖拽信息设置到表单上
showfile(fr);
}
//显示文件,暂时设置为显示图片
function showfile(f11){
//alert(f.name+"***"+f.size+"***"+f.type);//得到文件信息
var fr=new FileReader();
fr.onload=function(e){
divobjx.innerHTML="<img id='fileimg' src='"+fr.result+"'\>";
//alert(fr.result);
}
fr.readAsDataURL(f11);
}
Web存储及文件拖拽的更多相关文章
- html5 文件拖拽上传
本文首先发表在 码蜂笔记 : http://coderbee.net/index.php/web/20130703/266 html5 文件拖拽上传是个老话题了,网上有很多例子,我一开始的代码也是网 ...
- VC实现文件拖拽OnDropFiles
文章转自http://blog.csdn.net/zamaolangzi/article/details/5645284 使用过QQ的人都知道,只要把文件拖拽到消息框中就可以传送文件了.那么这种功能是 ...
- C#之winform实现文件拖拽功能
将一个文件拖拽到窗体的某个控件时,将该控件的路径显示在该控件上,只要拿到了路径自然可以读取文件中的内容了 将一个控件的属性AllowDrop设置为true,然后添加DragDrop.DragEnter ...
- Linux下安装VMware Tools(使虚拟机支持文件拖拽)
如图点击虚拟机找到安装VMware Tools选项,点击后会在虚拟机桌面显示一个光盘,双击进入如下页面: 选择压缩包将其复制放入Home中不带中文的文件夹: 打开终端,输入cd命令进入文件夹,将压缩包 ...
- html5 drag 文件拖拽浅淡
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- C# 之文件拖拽和pixturBox缩放与拖拽
文件拖拽: 效果:将一个文件拖拽到窗体的某个控件时,将该控件的路径显示在该控件上,只要拿到了路径自然可以读取文件中的内容了. 将一个控件的属性AllowDrop设置为true,然后添加DragDrop ...
- php和js实现文件拖拽上传
Dropzone.js实现文件拖拽上传 http://www.sucaihuo.com/php/1399.html demo http://www.sucaihuo.com/jquery/13/139 ...
- wxpython实现文件拖拽
我想让wx.grid里面的单元格能够支持文件拖拽,实现起来挺简单的,共分3步: 1.创建一个wx.FileDropTarget子类的对象,并把要支持拖拽的控件传给它的构造函数,此处是grid 2.调用 ...
- C#之winform实现文件拖拽功能【转】
将一个文件拖拽到窗体的某个控件时,将该控件的路径显示在该控件上,只要拿到了路径自然可以读取文件中的内容了 将一个控件的属性AllowDrop设置为true,然后添加DragDrop.DragEnter ...
随机推荐
- 面试简单整理之rabbitmq
135.rabbitmq 的使用场景有哪些? 单反单收,单发多收,发布订阅,按路由发送,按主题发送 136.rabbitmq 有哪些重要的角色? Server,Consumer,Producer 13 ...
- Spring Beans和依赖注入
您可以自由地使用任何标准的Spring框架技术来定义您的bean及其注入的依赖项.为简单起见,我们经常发现使用@ComponentScan(找到您的bean)和使用@Autowired(做构造函数注入 ...
- 关于numpy中的函数return中加入字符串类型数据后,小数点精度变化
weekdays.pyimport numpy as npfrom datetime import datetimedef datestr2num(s): return datetime.strpti ...
- oracle分区表的使用和查询
本文参考了 https://blog.csdn.net/mzglzzc/article/details/46300645 一 创建和使用分区表 1.范围分区(RANGE)范围分区将数据基于范围映射到 ...
- Linux如何挂载U盘
1,以root用户登陆 先加载USB模块 modprobe usb-storage 用fdisk -l 看看U盘的设备 假如U盘是sda1 2,确定在 目录 /mnt 下建立了 文件夹 / ...
- org.apache.maven.archiver.mavenarchiver.getmanifest怎么解决
原因就是你的maven的配置文件不是最新的 1.help ->Install New Software -> add ->https://otto.takari.io/content ...
- Filter的使用(web作业)
一:什么是过滤器 Filter:Servlet过滤器Fileter是一个小型的web组件,它们通过拦截请求和响应,以便查看.提取或以某种方式操作客户端和服务器之间交换的数据,实现“过滤”的功能.Fil ...
- C#如何以管理员身份运行程序 转
在使用winform程序获取调用cmd命令提示符时,如果是win7以上的操作系统,会需要必须以管理员身份运行才会执行成功,否则无效果或提示错误. 比如在通过winform程序执行cmd命令时,某些情况 ...
- python循环解压rar文件
python循环解压rar文件 C:. │ main.py │ ├─1_STL_算法简介 │ STL_算法简介.rar │ └─2_STL_算法_填充新值 STL_算法_填充新值.rar 事情是这样的 ...
- ES6 generators in depth 一(译)
今天在学习redux-saga时,外部链接推荐了这篇文章ES6 generators in depth,所以翻译的同时也可以加深一下对Generator的理解. 这里对原文一些只能在高版本现代浏览器使 ...