首頁  >  文章  >  後端開發  >  你或許會想要用到的三個新的JavaScript API

你或許會想要用到的三個新的JavaScript API

WBOY
WBOY原創
2016-08-08 09:26:57853瀏覽

如果你是一個SitePoint的老讀者並且是我的粉絲的話,那麼你已經知道我寫了很多關於HTML5以及JS API的文章。到目前為止,我已經發布了一些介紹你現在就可以馬上使用的API,儘管可能會用到polyfill的方式。 (譯註:我不知道什麼是polyfill請點這裡。)

但是今天我可能要打破這個常規來給大家介紹一些仍然還處在初期階段的

API。大家必須知道這些API是非常新的,這三個裡面有兩個都是在幾天之前剛發布的。也正因如此,這些API現目前都還無法使用。但如果你有興趣了解它們具體是用來做什麼的,你可以繼續閱讀下面關於它們的詳細介紹,同時也歡迎留下你的看法和回應。

廢話不多說,現在開始!

Web Alarms API

Web Alarms API讓你可以配置設備的鬧鈴設置,從而能夠安排通知訊息或讓某個特定的應用在指定的時間點啟動。這個API最典型的用法會涉及像鬧鐘,日曆,或其他任何需要在特定時間進行特定操作的程序。

自從去年開始,這個API剛剛成為了一個W3C的設計草稿。因此所有有待成為W3C官方推薦的相關細節都還在初期階段。這個API需要透過window.navigator物件下的alarms屬性來使用。 alarms屬性會提供三個函數:

getAll(): 從裝置取得全部現有的鬧鈴並以包含Alarm

add():

註冊一個基於

Date物件的鬧鈴並回傳一個AlarmRequest物件。

remove():

透過唯一

ID

移除一個之前註冊的鬧鈴(唯一性僅針對應用本身)

為了向大家演示如何展示這些函數這裡有一個加入鬧鈴的例子(請記住現目前任何瀏覽器都不支援這段程式碼)

view sourceprint?

var alarmId;

var request = navigo.alarms. (

new Date("June 29, 2012 07:30:00"),

"respectTimezone",

alarmId = e.target.result;

};

request.onerror = function (e) {);

如果你想了解更多關於

Web Alarms API,請參閱相關細節文件。 Presentation API

Presentation API

的目標就是讓投影機或TV DVI等)連接以及透過無線(MiraCast, Chromecast, DLNA, AirPlay等)的裝置。這個API所做的就是在請求頁面與第二顯示裝置上的簡報頁面之間實現訊息互通。 請注意該API細節並不屬於

W3C這個

API需要透過window.navigator物件下的presentation屬性來使用。這個屬性提供了一個叫requestSession()函數,以及presentavailablechange兩個事件。 requestSession()函數可以用來啟動或還原第二顯示裝置上的示範。它會傳回一個session物件指涉目前的示範。當透過requestSession()傳入的url裡面的示範內容被載入完成後,示範畫面的頁面會收到present事件。最後,在第一張示範出現後或最後一張示範完成後會發出availablechange事件。 舉個例子,來自細節文檔,該API的用法如下所示:view sourceprint?

顯示按鈕>

varpresentation = navigator.presentation,

.buter​​pi​​acfer] onavailablechange = function(e) {

showButton.disabled = !e.available;

showButton.onclick = show;

}); var session =presentation.requestSession('http://example.org/');

session.onstatechange = function() {

switch (session.state) {

switch (session.state) {

ase'

session.postMessage(/*...*/);

session.onmessage = function() { /*...*/ };

.斷開連接':

console.log('斷開連接。'); ?演示API

的訊息,可以查看最終報告。

Standby API

Standby API讓你可以在佬瀏覽器頁面中請求畫面持續顯示鎖定。這可以防止設備進入省電狀態(例如螢幕自動關閉) 。這個功能對某些

web應用至關重要。例如,想像一下你正在駕駛並在手機上使用基於

web的導航軟體(非本地應用)。如果你不去碰碰螢幕的話,你的手機的螢幕會自動關閉,除非你事前在手機上進行過相關的設定。在這種情況下,通常你是想讓螢幕保持顯示狀態的。這就是這個

API 適用的地方。

這個

API需要透過

window.navigator物件下的wakeLock

物件下的

wakeLock

屬性來使用。它會提供兩個函數:request() : 使目前應用程式允許螢幕保持顯示狀態。 release(): 釋放持續顯示鎖,這樣螢幕就不會再被強制要求顯示。 這兩個函數都只接受一個參數,其只能是「

screen」或「system」。前面表示操作是針對設備螢幕,而前面是針對除螢幕之外如CPU或廣播之類的其他資源。 以下範例將示範如何應用該

API裝置螢幕保持顯示狀態:

查看來源列印? navigator.wakeLock.request("display") .then(

function successFunction() errorFunction() { //做其他事 } );

要讓設備允許螢幕關閉,我們可以用以下方法來關閉來源? navigator.wakeLock.release("display");

如果你想要了解關於

備用 API的更多信息,可以參考這篇非官方草稿。

總結

在這篇文章裡我給大家介紹了一些防護的

JS API 。我要再次強調它們,因為大家都還處於非常早期的階段,所以目前沒有瀏覽器支援。我們也無法因此實際操作它們。但是正因為如此之新現在有機會抓住它們的發展甚至參與幫助的細節設計的完善。

免費領取

LAMP

兄弟連

原創

細說PHP

》精要版,詳情諮詢官網客服:

http://www.lampbrother.net

PHPCMS

http:/ .php?u=5

微信開發

http://yun.itxdl.cn/online/weixin/index.php?u= 5 http://yun.itxdl.cn/online/server/index.php?u=5Javascript. /js/index.php?u=5CTO訓練營http://yun.itxdl.cn/online/cto+

以上就介紹了你或許想要用到的三個新的JavaScript API,包含了方面的內容,希望對PHP教學有興趣的朋友有幫助。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn