HTML5API(2)
四、文件API
1、概述
- H5允许JS有条件的读取客户端文件
- 允许读取的文件:1.待上传的文件2.拖进浏览器的文件
- 多文件上传设置属性multiple
- 过滤上传文件类型
- 设置accept属性
accept='image/jpg'
accept='image/*'

2、FileList对象
- 由File对象构成的集合(类数组对象)
- FileList对象是File对象组成的数组
- type为file的input元素的属性files为FileList对象
3、File对象
- name
- size
- type
- lastModified
- lastModifiedDate
4、FileReader对象
- 01、方法
- readAsText()
- readAsDataURL()
- 属性
- error
- readyState
- result
- 事件
- onload
- onloadstart当读取操作将要开始之前调用
- onloadend操作完成时调用
- onerror
- onabort当读取操作被终止时调用
- onprogress
在读取数据过程中周期调用
五、XHR2
1、概念
- XMLHttpRequest对象,用于发起http请求
- H5标准新增了更多的属性和方法和事件
2、FormData
- 用来获取表单数据
- http请求(post方式),请求体编码方式application/x-www-form-urlencoded ||| multipart/form-data
- XMLHttpRequest默认的请求体编码方式multipart/form-data
- 创建FormData对象可以把form元素作为参数,也可以没有参数创建空的formdata
- FormData对象调用append()在原来内容基础上添加新的内容
3、XMLHTTPRequest对象新增的属性、方法、事件
- 01、方法
- open()
- send()
- abort()
- 02、属性
- responseText
- responseXML
- readyState
- status
- 03、事件
- onreadystatechange
4、progressEvent
- loaded
- total
- lengthComputable长度是否可计算
5、XMLHttpRequestUpload
- onload
- onloadstart
- onloadend
- onprogress
- onerror
- onabort
- ontimeout
六、Web存储
1、localStorage
2、sessionStorage
3、localStorage和sessionStorage以及cookie区别?
- 数据都存储在浏览器上
- cookie可以被后端读取,localStorage和sessionStorage只能在前端应用
- cookie的有效期可以设置,localStorage有效期无法设置,一直到被删除,sessionStorage有效期无法设置,浏览器关闭销毁。
七、应用程序缓存Application Cache
1、浏览器缓存
2、应用程序缓存概述
- 可以做离线浏览
- 缓存页面,提高浏览速度
3、使用
- html标签mainfest属性引入一个文件
- 设置mainfest文件
- 使用applicationCache对象操作
4、manifest文件
CACHE MANIFEST
#version 0.0.2
CACHE:
需要缓存的文件列表
NETWORK:
不需要缓存的文件列表
FALLBACK
./ ./offline.html

5、applicationCache对象
- 事件
- checking
- noupldate
- downloading
- progress
- cached缓存完成第一次触发
- updateready更新完成
- 方法
- update
九、子窗口跨域传值
1、window.postMessage(text,origin)
2、window.addEventListener("message",function(){})
3、注意
- 父窗口把消息传递给子窗口:在父窗口文件中获取子窗口window对象,子窗口window调用postMessage() 子窗口文件中window监听message
- 子窗口把消息发给父窗口,
十、Web Workers
1、概述
- Worker可以开辟一个新的进程,进行一些比较复杂的运算
- 两个进程间可以互相通信
2、Worker API
- 方法
- postMessage()
- terminate()
- 事件
- message
HTML5API(2)的更多相关文章
- Angular2入门系列教程7-HTTP(一)-使用Angular2自带的http进行网络请求
上一篇:Angular2入门系列教程6-路由(二)-使用多层级路由并在在路由中传递复杂参数 感觉这篇不是很好写,因为涉及到网络请求,如果采用真实的网络请求,这个例子大家拿到手估计还要自己写一个web ...
- Angular2学习笔记(1)
Angular2学习笔记(1) 1. 写在前面 之前基于Electron写过一个Markdown编辑器.就其功能而言,主要功能已经实现,一些小的不影响使用的功能由于时间关系还没有完成:但就代码而言,之 ...
- ASP.NET Core 之 Identity 入门(一)
前言 在 ASP.NET Core 中,仍然沿用了 ASP.NET里面的 Identity 组件库,负责对用户的身份进行认证,总体来说的话,没有MVC 5 里面那么复杂,因为在MVC 5里面引入了OW ...
- ABP入门系列(1)——学习Abp框架之实操演练
作为.Net工地搬砖长工一名,一直致力于挖坑(Bug)填坑(Debug),但技术却不见长进.也曾热情于新技术的学习,憧憬过成为技术大拿.从前端到后端,从bootstrap到javascript,从py ...
- Online Judge(OJ)搭建(第一版)
搭建 OJ 需要的知识(重要性排序): Java SE(Basic Knowledge, String, FileWriter, JavaCompiler, URLClassLoader, Secur ...
- 如何一步一步用DDD设计一个电商网站(九)—— 小心陷入值对象持久化的坑
阅读目录 前言 场景1的思考 场景2的思考 避坑方式 实践 结语 一.前言 在上一篇中(如何一步一步用DDD设计一个电商网站(八)—— 会员价的集成),有一行注释的代码: public interfa ...
- 如何一步一步用DDD设计一个电商网站(八)—— 会员价的集成
阅读目录 前言 建模 实现 结语 一.前言 前面几篇已经实现了一个基本的购买+售价计算的过程,这次再让售价丰满一些,增加一个会员价的概念.会员价在现在的主流电商中,是一个不大常见的模式,其带来的问题是 ...
- 【.net 深呼吸】细说CodeDom(5):类型成员
前文中,老周已经厚着脸皮介绍了类型的声明,类型里面包含的自然就是类型成员了,故,顺着这个思路,今天咱们就了解一下如何向类型添加成员. 咱们都知道,常见的类型成员,比如字段.属性.方法.事件.表示代码成 ...
- 【.net 深呼吸】细说CodeDom(4):类型定义
上一篇文章中说了命名空间,你猜猜接下来该说啥.是了,命名空间下面就是类型,知道了如何生成命名空间的定义代码,之后就该学会如何声明类型了. CLR的类型通常有这么几种:类.接口.结构.枚举.委托.是这么 ...
随机推荐
- Python面向对象—类的继承
一个子类可以继承父类的所有属性,不管是父类的数据属性还是方法. class Father(object): num = 0 def __init__(self): print "I'm Pa ...
- Windows系统Unity3D中的快捷键
Windows系统Unity3D中的快捷键 组合键 键 功能 File 文件 Ctrl N New Scene 新建场景 Ctrl O Open Scene 打开场景 Ctrl S Sav ...
- [ZJOI2010]数字计数 数位DP
最近在写DP,今天把最近写的都放上来好了,,, 题意:给定两个正整数a和b,求在[a,b]中的所有整数中,每个数码(digit)各出现了多少次. 首先询问的是一个区间,显然是要分别求出1 ~ r ,1 ...
- Android 职业路上--只要还有一丝希望,不到最后一刻,不要轻言放弃--从屌丝到进入名企
写在前面:只要还有一丝希望,不到最后一刻,不要轻言放弃! 来到西安十来天了,现在基本安顿下来了,这几天在工作中也遇到一些技术问题,但都没来得及总结分享,现在想和大家分享一下我的工作求职经历! 接触an ...
- BZOJ1588:[HNOI2002]营业额统计——题解
http://www.lydsy.com/JudgeOnline/problem.php?id=1588 Description Tiger最近被公司升任为营业部经理,他上任后接受公司交给的第一项任务 ...
- bzoj2216: [Poi2011]Lightning Conductor(分治决策单调性优化)
每个pi要求 这个只需要正反DP(?)一次就行了,可以发现这个是有决策单调性的,用分治优化 #include<iostream> #include<cstring> #incl ...
- 树莓派使用Samba共享文件夹
转载自:http://raspberrypihq.com/how-to-share-a-folder-with-a-windows-computer-from-a-raspberry-pi/ Shar ...
- Android 悬浮窗口
Android 悬浮窗口 一.创建悬浮窗口步骤 1.实现一个ViewGroup类,作为悬浮窗口的界面类,以便在里面重写onInterceptTouchEvent和onTouchEvent方法,实 ...
- NYOJ 745 dp
蚂蚁的难题(二) 时间限制:1000 ms | 内存限制:65535 KB 难度:3 描述 下雨了,下雨了,蚂蚁搬家了. 已知有n种食材需要搬走,这些食材从1到n依次排成了一个圈.小蚂蚁对每种 ...
- centOS升级部分功能后,不能进入桌面(桌面)
在Linux中安装nginx,安装过程中需要安装c++等一部分环境,装完后,莫名奇妙的centos就不能进入桌面了,命令窗口可以进去. 网上查了查资料,说是升级了一部分功能,和内核有冲突.需要更新下系 ...