HTML5 新增了许多重要的特性,像 video、audio 和 canvas 等等,这些特性使得能够很容易的网页中包含多媒体内容,而不需要任何的插件或者 API。而其它的新元素,例如 section、article、header 和 nav 等则是用来丰富网页内容。
- Fullscreen API
这个 HTML5 全屏 API 让 Web 开发者可以通过编程控制页面的全屏显示。
function launchFullScreen(element) {
if (element.requestFullScreen) {
element.requestFullScreen();
} else if (element.mozRequestFullScreen) {
element.mozRequestFullScreen();
} else if (element.webkitRequestFullScreen) {
element.webkitRequestFullScreen();
} else {
console.log("暂时不支持全屏");
}
}
var div = document.getElementById("panel");
div.onclick = function(e){
launchFullScreen(document.documentElement); // 整个页面
//launchFullScreen(document.getElementById("videoElement")); // 单个元素
}
var div = document.getElementById("cs");
div.onclick = function(e){
launchFullScreen(document.getElementById("cs")); // 单个元素
}
2.Battery API
顾名思义,这是一个电池 API ,明显是为移动设备准备的,用于监控电池的状态。能够通过事件监听电池电量的变化,电池的等级、可用时间等状态。下面是是示例代码,可以通过后面的教程链接学习更详细的使用方法。
// 获取电池对象
var battery = navigator.battery || navigator.webkitBattery || navigator.mozBattery;
// 一组非常有用的电池属性
console.warn("Battery charging: ", battery.charging); // true
console.warn("Battery level: ", battery.level); // 0.58
console.warn("Battery discharging time: ", battery.dischargingTime);
// 监听电池状态
battery.addEventListener("chargingchange", function(e) {
console.warn("Battery charge change: ", battery.charging);
}, false);
3.getUserMedia API
特别有趣的一个 API,能够调用电脑的摄像头,结合 标签和 Canvas 就能在浏览器中拍摄照片了。未来这个 API 将被广泛用来让浏览器和用户之间互动。使用方式在我前面的人脸识别中有使用到,可以参考该文章人脸识别系统_人脸检测
4.Link Prefetching
这个链接预取 API 非常有用,让开发者可以控制网页资源在后台安静的预先加载,这样用户在浏览网站或者使用 Web 应用程序的时候能够有流畅的使用体验。可以预加载整个页面,也可以是单个资源,示例代码如下:
<!-- 预加载整个页面 -->
<link rel="prefetch" href="http://192.168.1.1./testcc/gethtml" />
<!-- 预加载一张图片 -->
<link rel="prefetch" href="http://192.168.1.1./testcc/images/m1.png" />