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()和IsSearchProviderInstalled()。
- 定义窗口、导航器和外部接口。
- 微数据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。
- 等等