四、文件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)的更多相关文章

  1. Angular2入门系列教程7-HTTP(一)-使用Angular2自带的http进行网络请求

    上一篇:Angular2入门系列教程6-路由(二)-使用多层级路由并在在路由中传递复杂参数 感觉这篇不是很好写,因为涉及到网络请求,如果采用真实的网络请求,这个例子大家拿到手估计还要自己写一个web ...

  2. Angular2学习笔记(1)

    Angular2学习笔记(1) 1. 写在前面 之前基于Electron写过一个Markdown编辑器.就其功能而言,主要功能已经实现,一些小的不影响使用的功能由于时间关系还没有完成:但就代码而言,之 ...

  3. ASP.NET Core 之 Identity 入门(一)

    前言 在 ASP.NET Core 中,仍然沿用了 ASP.NET里面的 Identity 组件库,负责对用户的身份进行认证,总体来说的话,没有MVC 5 里面那么复杂,因为在MVC 5里面引入了OW ...

  4. ABP入门系列(1)——学习Abp框架之实操演练

    作为.Net工地搬砖长工一名,一直致力于挖坑(Bug)填坑(Debug),但技术却不见长进.也曾热情于新技术的学习,憧憬过成为技术大拿.从前端到后端,从bootstrap到javascript,从py ...

  5. Online Judge(OJ)搭建(第一版)

    搭建 OJ 需要的知识(重要性排序): Java SE(Basic Knowledge, String, FileWriter, JavaCompiler, URLClassLoader, Secur ...

  6. 如何一步一步用DDD设计一个电商网站(九)—— 小心陷入值对象持久化的坑

    阅读目录 前言 场景1的思考 场景2的思考 避坑方式 实践 结语 一.前言 在上一篇中(如何一步一步用DDD设计一个电商网站(八)—— 会员价的集成),有一行注释的代码: public interfa ...

  7. 如何一步一步用DDD设计一个电商网站(八)—— 会员价的集成

    阅读目录 前言 建模 实现 结语 一.前言 前面几篇已经实现了一个基本的购买+售价计算的过程,这次再让售价丰满一些,增加一个会员价的概念.会员价在现在的主流电商中,是一个不大常见的模式,其带来的问题是 ...

  8. 【.net 深呼吸】细说CodeDom(5):类型成员

    前文中,老周已经厚着脸皮介绍了类型的声明,类型里面包含的自然就是类型成员了,故,顺着这个思路,今天咱们就了解一下如何向类型添加成员. 咱们都知道,常见的类型成员,比如字段.属性.方法.事件.表示代码成 ...

  9. 【.net 深呼吸】细说CodeDom(4):类型定义

    上一篇文章中说了命名空间,你猜猜接下来该说啥.是了,命名空间下面就是类型,知道了如何生成命名空间的定义代码,之后就该学会如何声明类型了. CLR的类型通常有这么几种:类.接口.结构.枚举.委托.是这么 ...

随机推荐

  1. WIN7系统插入蓝牙适配器经常断开问题

    WIN7 ACER笔记本一台,蓝牙耳机一个,10块钱的蓝牙适配器一个 目的:可以在笔记本上用适配器与蓝牙耳机匹配 出现问题:1.有2个图标,一会左边感叹号,一会右边感叹号,必须有个存在感叹号 解决:第 ...

  2. [洛谷P2057][SHOI2007]善意的投票

    题目大意:有$n(n\leqslant300)$个人,每个人可以选择$0$或$1$,每个人最开始有意愿,有$m(m\leqslant\dfrac{n(n-1)}2)$对好朋友.定义一次的冲突数为好朋友 ...

  3. openjudge666:放苹果—题解

    (测试这里的markdown,同时也有纪念意义吧--第一次写的题解) 当时刚学递推的时候做的一道题 oj上的666题 666:放苹果 总时间限制: 1000ms 内存限制: 65536kB 描述 把M ...

  4. AOJ.865 青铜莲花池 (BFS)

    AOJ.865 青铜莲花池 (BFS) 题意分析 典型的BFS 没的说 代码总览 #include <iostream> #include <cstdio> #include ...

  5. bzoj1706: [Usaco2007 Nov]relays 奶牛接力跑 (Floyd+新姿势)

    题目大意:有t(t<=100)条无向边连接两点,求s到e刚好经过n(n<=10^7)条路径的最小距离. 第一反应分层图,但是一看n就懵逼了,不会写.看了题解之后才知道可以这么玩... 首先 ...

  6. [NOIP 2017]棋盘

    题目描述 有一个 m×m 的棋盘,棋盘上每一个格子可能是红色.黄色或没有任何颜色的.你现在要从棋盘的最左上角走到棋盘的最右下角. 任何一个时刻,你所站在的位置必须是有颜色的(不能是无色的), 你只能向 ...

  7. getopt和getopt_long参数处理

    1:getopt函数 getopt主要用于解析程序运行时所带的参数,原型如下: #include <unistd.h> int getopt(int argc, char * const ...

  8. ACM1753大明A+B

    ACM1753_link 这道题利用了大数相加,但是需要将小数和整数部分分开,独立相加,然后组合成一个数: 数据的可能性: 1.两个整数相加,没有小数点 2.一个整数一个小数相加 3.两个小数相加 要 ...

  9. Leetcode 381. O(1) 时间插入、删除和获取随机元素 - 允许重复

    1.题目描述 设计一个支持在平均 时间复杂度 O(1) 下, 执行以下操作的数据结构. 注意: 允许出现重复元素. insert(val):向集合中插入元素 val. remove(val):当 va ...

  10. Redrain 通用菜单控件使用方法和说明(附源码和demo)

    转载请说明原出处,谢谢~~:http://blog.csdn.net/zhuhongshu/article/details/42889709 大概半年前我写过博客说明怎么改造duilib的原代Menu ...