萬盛學電腦網

 萬盛學電腦網 >> 網頁制作 >> Html5 >> 5個強大的HTML5API函數使用技巧

5個強大的HTML5API函數使用技巧

HTML5提供了一些非常強大的JavaScript和HTML API,來幫助開發者構建精彩的桌面和移動應用程序,下面就讓我們一起來欣賞這篇關於5個強大的HTML5API函數的文章吧!

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

預加載網頁內容,為浏覽者提供一個平滑的浏覽體驗。

復制代碼代碼如下:

http://davidwalsh.name/css-enhancements-user-experience" />

以上就是精品為您准備的關於5個強大的HTML5API函數的信息,希望對您的生活工作有幫助。

copyright © 萬盛學電腦網 all rights reserved