H5新特性总结
Web前端最新的官方标准无疑就是es6和H5了,es6之前已经说过了(多是一些语法糖),现在来总结一下H5给我们来了哪些新“朋友”吧~
1.video/radio 视频/音频
2.canvas 绘画
3.geolocation 定位
4.WebSocket 前后端双向通讯
5.localStorage/sessionStorage代替cookie本地存储
6.文件拖拽(drag事件+dataTransfer+FileReader)
7.WebWorker js多线程,提高性能
8.WebSQL 前端数据库(已被官方弃用)
9.manifest 离线缓存
同时也新增了一些标签,常用的有:header、nav、section、aside、footer
为了使得IE6-8兼容H5的新标签:
我们会引入如下代码:
<!--[if lt IE 9]>
<script src="//cdn.bootcss.com/respond.js/1.4.2/respond.js"></script>
<script src="http://cdn.bootcss.com/html5shiv/3.7.2/html5shiv.js"></script>
<![endif]-->
说明一下:
html5shiv.js是用来使得IE6-8能够识别H5标签,其原理很简单,就是用创建自定义标签的方法来使得IE可以识别H5标签。
自定义标签在一般的高级浏览器可以直接写入HTML中,例如:
<myLabel>
内容内容内容~~~~
</myLabel>
但是IE6~8只能通过js的createElement:
document.createElement('myLabel');
//实际上htmlshiv.js的核心就是这个,随便列几个H5标签
var e = "article, aside, audio, canvas, footer, nav, section, video".split(', ');
for(var i=0;i=e.length,i++){
    document.createElement(e[i]);
}
response.js是用来兼容css3的media的:
原理其实很简单:发ajax请求css代码,然后分析所有media query的min-width和max-width的语法,当window.resize时候引入对应的css块
原理代码都是一些正则匹配,就不恶心大家了~~
H5新特性总结的更多相关文章
- H5新特性汇总
		H5新特性: 新增选择器 document.querySelector.document.querySelectorAll 拖拽释放(Drag and drop) API 媒体播放的 video 和 ... 
- H5新特性--WebStorage--WebSocke
		今天的目标 3.2:h5新特性--WebStorage localStorage 在客户端浏览器保存数据 永久保存 保存数据 localStorage [key] = value 保存数据 loca ... 
- H5新特性---Web Worker---Web Stroage
		今天的目标 3.1:h5新特性八--Web Worker---代码就3行 程序:program 存储在外存(磁盘)中代码 进程:Process/Task 将程序调用内存中,分配空间 线程:Thread ... 
- H5新特性---SVG--椭圆--直线--文本--滤镜(高斯滤镜--模糊)--地理定位
		今天的目标 3.1:h5新特性--SVG--椭圆 <ellipse rx="" ry="" cx="" cy="" ... 
- H5新特性——--第三方绘图工具库 echarts(canvas)---SVG绘图
		今天学习的内容 3.1:h5新特性---第三方绘图工具库 echarts(canvas) 百度 echarts;d3;two.js;.... 3.2:h5新特性---SVG绘图 3.2:h5新特性-- ... 
- H5新特性-视频,音频-Flash-canvas绘图
		json格式 json - > AJAX json:数据格式,通常是以字符串形式表示 对象 {"name":"james","age" ... 
- H5新特性实现对class的增删改
		直接撸代码 全靠死记硬背 没什么技术点 HTML部分 <!DOCTYPE html> <html lang="en"> <head> <m ... 
- Atitti html5 h5 新特性attilax总结
		Atitti html5 h5 新特性attilax总结 Attilax觉得不错的新特性 3.语义Header和Footer (The Semantic Header and Footer) 8.占位 ... 
- 使用h5新特性,轻松监听任何App自带返回键
		1.前言 如今h5新特性.新标签.新规范等有很多,而且正在不断完善中,各大浏览器商对它们的支持,也是相当给力.作为前端程序员,我觉得我们还是有必要积极关注并勇敢地加以实践.接下来我将和各位分享一个特别 ... 
- H5新特性之data-*
		简单介绍:html5的data-*能够为标签添加一些自定义的属性和值,并且这种自定义的属性和值可以通过js来获取,十分的便捷 代码: //html<tr th:each="plan : ... 
随机推荐
- Linux内核第八节         20135332武西垚
			第一种分类: I/O-bound:频繁进行I/O,并且需要花费很多时间等待I/O完成 CPU-bound:计算密集,需要大量的CPU时间进行运算 第二种分类: 批处理进程:不必与用户交互,常在后台进行 ... 
- my项目的总结2015.8.26编
			这已经是上上个星期的事了,现在回顾一下: 负责的模块是"my",更精准的说应该是my里面的个人信息管理 由于项目分域,模块已经分好了,涉及到的只是在现有的基础上解决分域后遗留的历史 ... 
- VC6到VC2010,项目迁移错误
			错误信息: error C2440: “static_cast”: cannot from “BOOL (__thiscall CSelectRect::* )(void)” to “BOOL (__ ... 
- vue的使用1
			Vue.$set(object, key, value); <!-- Alt + C --> <input @keyup.alt.="clear"> < ... 
- vue 路由传参 params 与 query两种方式的区别
			初学vue的时候,不知道如何在方法中跳转界面并传参,百度过后,了解到两种方式,params 与 query.然后,错误就这么来了: router文件下index.js里面,是这么定义路由的: { p ... 
- ActiveMA在CentOS7下的安装
			下载:apache-activemq-5.14.0-bin.tar.gz http://activemq.apache.org/activemq-5157-release.html Getting t ... 
- python文件逐行读取四种方法
			下面是四种Python逐行读取文件内容的方法, 并分析了各种方法的优缺点及应用场景,以下代码在python3中测试通过, python2中运行部分代码已注释,稍加修改即可. 方法一:readline函 ... 
- Beyond Compare 4过期
			试用期到期操作:找到beyond Compare 4文件夹下面的BCUnrar.dll,将其删掉或者重命名,再重新打开接着使用! 
- pgm17
			这部分讨论决策理论与 PGM 的关系,一个主要的思路就是将决策与 PGM 的 inference 完美的融合在一起. MEU 为了引入决策理论中的 maximum expected utility 原 ... 
- ubuntu eclipse 无法打开
			报错: The catalog could not be loaded... 这个问题,我上网查了很久.. 基本上网上可用的办法我都试过了.全是失败的 firefox+autoproxy,shadow ... 
