HTML5是一种开放的web标准,其技术内涵和API外延会随着web的发展而不断丰富。目前HTML5主要包括下面这些功能。这些API可以与应用程序中引入的新元素一起使用。
- 媒体(视频和音频)播放和控制API,提供多种媒体元素,并支持实时文本轨道(如字幕)
- 表单验证API,如setcustomvalidity()方法。
- 用户命令API
- 离线应用API
- web应用注册API,允许web应用程序登记本身的协议和媒体类型,使用registerprotocolhandler()和registercontenthandler()方法实现。
- 编辑API,使用全局属性contenteditable。
- 拖放API,使用draggable属性。
- 文档URL API 公开文档URL,允许脚本进行导航,重定向和重载。
- History API,公开浏览历史,允许脚本更新文档的URL,帮助用户在应用Ajax时,客服History定位问题。
- base64转换API,使用atob()和btoa()方法。
- 回调函数管理API,使用基于settimeout()和setinterval()定时器设计的回调函数列表。
- 用户提示API,使用alert(),confirm(),prompt(),showModalDialog()方法。
- 文档打印API,使用print()方法
- 处理搜索引擎提供商API,使用AddSearchProvider()和lsSearchProviderInstalled()。
- 定义窗口,导航器和外部接口。
- 微数据API -即时模式位图图形API,基于画布元素canvas和2D上下文环境。 -跨文档通信API,基于postMessage()方法,通信通道和广播通道。 -执行脚本的多线程API,基于Worker和SharedWorker。 -客户端数据存储,基于localStorage和sessionStorage。
- 客户端与服务器双向通信API,基于WebSocket。
- 服务器到客户端数据推送API,基于EventSource。
- MathML
- Server-Sent Events
- Scalable Vector Graphics(SVG)
- web Origin Concept。
- Web SQL database。
- XMLHttpRequest Level 2。