您好,欢迎访问一九零五行业门户网

5 个强大的HTML5 API 函数推荐_html5教程技巧

html5提供了一些非常强大的javascript和html api,来帮助开发者构建精彩的桌面和移动应用程序。本文将介绍5个新型的api,希望对你的开发工作有所帮助。
1.  全屏api(fullscreen api)
该api允许开发者以编程方式将web应用程序全屏运行,使web应用程序更像本地应用程序。
复制代码
代码如下:
// 找到适合浏览器的全屏方法
function launchfullscreen(element) {
if(element.requestfullscreen) {
element.requestfullscreen();
} else if(element.mozrequestfullscreen) {
element.mozrequestfullscreen();
} else if(element.webkitrequestfullscreen) {
element.webkitrequestfullscreen();
}
}
// 启动全屏模式
launchfullscreen(document.documentelement); // the whole page
launchfullscreen(document.getelementbyid(videoelement)); // any individual element
2.  页面可见性api(page visibility api)
该api可以用来检测页面对于用户的可见性,即返回用户当前浏览的页面或标签的状态变化。
复制代码
代码如下:
// 设置隐藏属性和可见改变事件的名称,属性需要加浏览器前缀
// since some browsers only offer vendor-prefixed support
var hidden, state, visibilitychange;
if (typeof document.hidden !== undefined) {
hidden = hidden;
visibilitychange = visibilitychange;
state = visibilitystate;
} else if (typeof document.mozhidden !== undefined) {
hidden = mozhidden;
visibilitychange = mozvisibilitychange;
state = mozvisibilitystate;
} else if (typeof document.mshidden !== undefined) {
hidden = mshidden;
visibilitychange = msvisibilitychange;
state = msvisibilitystate;
} else if (typeof document.webkithidden !== undefined) {
hidden = webkithidden;
visibilitychange = webkitvisibilitychange;
state = webkitvisibilitystate;
}
// 添加一个标题改变的监听器
document.addeventlistener(visibilitychange, function(e) {
// 开始或停止状态处理
}, false);
3.  getusermedia api该api允许web应用程序访问摄像头和麦克风,而无需使用插件。
复制代码
代码如下:
// 设置事件监听器
window.addeventlistener(domcontentloaded, function() {
// 获取元素
var canvas = document.getelementbyid(canvas),
context = canvas.getcontext(2d),
video = document.getelementbyid(video),
videoobj = { video: true },
errback = function(error) {
console.log(video capture error: , error.code);
};
// 设置video监听器
if(navigator.getusermedia) { // standard
navigator.getusermedia(videoobj, function(stream) {
video.src = stream;
video.play();
}, errback);
} else if(navigator.webkitgetusermedia) { // webkit-prefixed
navigator.webkitgetusermedia(videoobj, function(stream){
video.src = window.webkiturl.createobjecturl(stream);
video.play();
}, errback);
}
}, false);
4.  电池api(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);
5.  link prefetching
预加载网页内容,为浏览者提供一个平滑的浏览体验。
复制代码
代码如下:
以上就是这5个新型的api了,小伙伴们了解了吗,有什么疑问请留言,大家一起讨论,共同进步。
其它类似信息

推荐信息