html标签api,html5新增标签+API介绍
新增标签
1、embed
embed标签是html5新增的标签,用来嵌入内容,比如插件等,常用于视频文件的播放(为外部应用程序定义容器)。
这篇文章介绍了embed的常用属性,基本都是定义播放器的一些设置的,自动播放loop、开始时间starttime等:
http://www.cnblogs.com/lgx5/p/5714494.html
注:一些视频文件swf的大小只有几KB,但是视频本身是比较大的,自己的理解是视频网站只是将视频的地址封装进了swf文件,然后链接到真正的视频地址进行播放。
2、artical section aside
都是block块级元素。
artical一般是指独立的一篇文章,一般不与页面上的其他内容有关联,一般用于新闻文章、论坛的帖子、用户评论等,可以独立被外部引用,里面包含自己的头、尾、内容。
section类似于div,但是更语义化,将内容分块,一般section都包含标题。
aside侧边栏,一般用于定义文章artical的引用、注解等部分。
3、progress
进度条
............................懒得写了,见jsfiddle实例....................................
其他新增内容
1、本地存储 localStorage sessionStorage
支持setItem getItem removeItem clear等方法,而且支持点操作符和[]访问某字段。clear清除所有的数据项。
与cookie的对比:
cookie是为http请求服务的,与服务器进行交互;
localStorage sessionStorage是为本地数据存储而服务的,localStorage是永久本地存储,sessionStorage是会话级别的,会话关闭即失效;
cookie有大小限制及跨域限制,且每次请求都会被携带;
2、web worker
通过创建子线程,解决js单线程会阻塞的问题。
我的理解就是把一些耗费性能的计算等操作,分离出来到一个单独的js中,通过创建new Worker()对象,创建当前线程的一个子线程,不影响主线程上的DOM操作等,等计算结束,子线程通知到主线程,进行内容更新及子线程销毁等操作。
子线程的执行上下文不是window,所以无法获取window等对象,无法操作DOM,但可以通过postMessage方法与主进程进行互相通信,通过监听worker.onmessage方法获取传递的数据,主进程可以通过worker.terminate() 关闭子进程。worker对象一经销毁,则无法重新启动,需要重新新建Worker对象来启动。
3、geolocation支持用户地理位置的获取
经用户同意才被允许获取。用于导航,可以监控用户地理位置的移动等。
navigator.geolocation.getCurrentPosition(success(position), error());
//第一个函数正确返回地理位置:经纬度、海拔等,position.coords.latitude position.coords.longitude
//错误处理函数
//监控用户位置的变化
navigator.geolocation.watchPosition clearWatch()
4、websocket
基于TCP协议,双向的全双工通信,服务端和客户端可以相互推送消息。除了IE外,其他浏览器基本支持了WebSocket()接口(不同于ajax,websocket允许跨域通信)。相关的API如下:
send + onopen + onmessage + onerror + onclose等。相关的库有socket.io,一般用于聊天应用等。
5、canvas
定义画布,一个矩形框,但是真正的图像绘制需要用js来完成。
相关的绘制方法有:fillRect() arc moveTo lineTo drawImage等。
6、postMessage
解决跨域、跨窗口消息传递问题。原理是:html5新增的API,不管同不同源,都可以向其他window对象发送消息。postMessage只管消息的发送,而不用等待消息处理完成,仅仅是将消息插入到对应窗口的消息队列中即可(不阻塞程序)。
// 调用postmessage的window对象为要接收消息的那个window对象
// origin指明要接收消息的window对象所在的域,不需指明时,可以设置 *
window.top.postMessage(data, origin);
//要接收消息的window对象注册message事件
window.addEventListener('message', function(e){
//e.data e.source e.origin
})
7、history API
实现无刷新跳转,减少网络请求、改进用户体验等。
history.pushState(data, title, url)
history.replaceState(data, title, url)
window.onPopState(event)
8、FileReader定义异步读取本地文件的API,详见:
9、Mutation observer 监控DOM元素的变化,防止xss攻击。
// Firefox和Chrome早期版本中带有前缀
var MutationObserver = window.MutationObserver || window.WebKitMutationObserver || window.MozMutationObserver;
// 选择目标节点
var target = document.querySelector('#some-id');
// 创建观察者对象
var observer = new MutationObserver(function(mutations) {
mutations.forEach(function(mutation) {
console.log(mutation.type);
});
});
// 配置观察选项:
var config = { attributes: true, childList: true, characterData: true }
// 传入目标节点和观察选项
observer.observe(target, config);
// 随后,你还可以停止观察
observer.disconnect();
html标签api,html5新增标签+API介绍相关推荐
- html5 支持php标签吗,HTML5新增标签使用方法
HTML5提供了一些新的元素和属性,例如nav(网站导航块)和footer.这种标签将有利于搜索引擎的索引整理,同时更好的帮助小屏幕装置和视障人士使用,除此之外,还为其他浏览要素提供了新的功能,如au ...
- HTML5新增标签有哪些你知道吗?
html5新增标签 <article>标签定义外部的内容. 比如来自一个外部的新闻提供者的一篇新的文章,或者来自 blog 的文本,或者是来自论坛的文本.亦或是来自其他外部源内容. HTM ...
- HTML5中新增的音频标签是,HTML5新增的音频标签、视频标签
我们所说的H5就是我们所说的HTML5中新增的语言标准 一.音频标签 在HTML5当中有一个叫做audio的标签,可以直接引入一段音频资源放到我们的网页当中 格式: 降级的文字说明(当音频文件不能本浏 ...
- HTML5移动开发的基础与技巧(一)HTML5新增标签及应用场景
HTML5移动开发 HTML5的发展 HTML5 是 W3C 与 WHATWG 合作的结果.WHATWG为 HTML5 建立的一些规则: 新特性应该基于 HTML.CSS.DOM 以及 JavaScr ...
- 十二、HTML5新增标签特性详解(audio、video、input)
HTML5 第一天 一.什么是 HTML5 HTML5 的概念与定义 定义:HTML5 定义了 HTML 标准的最新版本,是对 HTML 的第五次重大修改,号称下一代的 HTML 两个概念: 是一个新 ...
- 前端基础8:HTML5新增标签及CSS3新属性 viewport 动画
HTML5新增标签 标签名 描述 header 头部 section 区分大模块 nav 导航 footer 尾部 article 文章 aside 侧边栏 audio 音频 video 视频 fig ...
- [HTML]HTML5新增标签
文章目录 前言 1. HTML5 新增的语义化标签 2. HTML5 新增的多媒体标签 2.1 video 标签 2.2 audio 标签 3. HTML5 新增的 input 标签 4. HTML5 ...
- HTML5新增标签以及扩展属性
HTML5新增标签以及属性 1. form表单可以和里面的内容分离 <form id=login action=login.php method=post ></form> & ...
- HTML5新增标签及废除标签整理
HTML5新增标签及废除标签整理(有些很偏就没有列出) 1>新增的标签 1>section元素 表示页面中的一个内容区块,比如章节.页眉.页脚或页面的其他部分,其实就像div,比div更具 ...
最新文章
- 开启注册丨全国社交媒体处理大会(SMP 2020)召开,98场报告日程全公开
- spring @Value 获取配置文件为 null 常见的几种方式
- oracle12 官网文档,Oracle 21c 官方文档 发布了
- 微信、QQ都在用的腾讯云EB级对象存储架构剖析
- Win10 IIS本地部署网站运行时图片和样式不正常?
- 有关Silverlight3.0在浏览器外运行的问题
- 粒子滤波简介(转载)
- Atitit mysql存储过程编写指南 1. 定义变量	1 1.1. 变量名以@开头用户变量 会话变量	1 1.2. 以declare关键字声明 存储过程变量	2 1.3. @是用户自定义变量,
- 【Python办公自动化】根据excel中数据批量生成word文档(适用劳动合同、质检报告、通知书等应用场景)
- 财会法规与职业道德【10】
- android 模拟滑屏,android模仿桌面左右滑屏
- POJ3608-旋转卡壳
- 如何使用WordPress建立一个博客、网站和论坛
- Vue父组件mounted执行完后再执行子组件mounted执行顺序问题
- BeanUtils制作自定义的转换器
- Linux用户及权限管理练习
- 织梦手机站 html 插件,织梦DEDECMS手机端生成静态页面插件完整版
- 20220530数据结构绿皮书读书笔记
- 小学生识字现状调查问卷
- “视”创未来,首届家庭实时视频产业联盟论坛呼吁共建产业生态