国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > HTML > 正文

HTML5的一個顯示電池狀態的API簡介

2020-03-24 17:10:04
字體:
來源:轉載
供稿:網友
移動設備的份額在網絡流量中在大量增長,其所貢獻的網絡流量非常龐大,以至于為了移動設備,我們單獨創建了一些API和設計理念。一個非常典型的例子是 W3C電池狀態API,它允許一個html' target='_blank'>應用程序獲知設備的電池狀態信息。這篇文章探索了這個新的API,為你展示了如何把它整合進你現有的應用程序。
檢測設備是否支持目前電池API依舊沒有得到主流支持。因此,在使用這個API前需要確認當前設備是否支持此API。下面展示的函數返回一個布恩值(True/False),指示當前瀏覽器是否支持電池狀態API。該函數首先檢測了 navigator.battery 對象是否存在。如果不存在,繼續檢測 Mozilla 專用的 navigator.mozBattery是否存在。我曾經見過有些代碼還檢測了 webkitBattery對象,但是我無法證實其在Chrome中是否存在。參考文檔:http://developer.mozilla.org/en-US/docs/DOM/window.navigator.battery

XML/HTML Code復制內容到剪貼板
functionisBatteryStatusSupported(){ return!!(navigator.battery||navigator.mozBattery); }
當電池完全被充滿電時,或者系統不存在電池時,這個值為0。 如果系統不在充電,或者無法確定完全充滿電所需時間,這個值為 (無窮大)。 dischargingTime 和chargingTime相似,(數值)到電池完全放電直到系統休眠剩余的時間(單位:秒) 如果放電時間無法確定,或 系統沒有電池 或 系統正在充電,這個值為 (無窮大) level (數值) 設備當前電量等級。取值在(0 ~ 1.0)區間,與剩余電量百分比對應。 1.0表示電池完全充滿電,或者不存在電池,或者數值無法確定。
檢測電池事件上述所有屬性都與一個電池事件綁定。這些事件用來指示電池狀態的變化。比如,插入電源會使charging屬性從false變為true。全部四種電池事件如下所列: chargingchange 這個類型的事件會在charging屬性改變時觸發。這個事件可以被 onchargingchange()事件處理器捕獲和處理。
chargingtimechange 這個類型的事件會在chargingtime屬性改變時觸發。這個事件可以被 onchargingtimechange()事件處理器捕獲和處理。
dischargingtimechange 這個類型的事件會在dischargingTime屬性改變時觸發。這個事件可以被 ondischargingtimechange()事件處理器捕獲和處理。
levelchange 這個類型的事件會在level屬性改變時觸發。這個事件可以被 onlevelchange()事件處理器捕獲和處理。
示例頁面下面的代碼展示了如何使用 電池狀態API 的屬性和事件。示例頁面顯示了API的各個屬性值,并且在事件觸發時更新它們的值。點擊此處訪問在線示例。

XML/HTML Code復制內容到剪貼板
head title TheBatteryStatusAPI-Example /title metacharsetmetacharset= UTF-8 / script window.addEventListener( load ,function(){ varbattery=navigator.battery||navigator.mozBattery; functiondisplayBatteryStats(){ document.getElementById( charging ).textContent=(battery.charging)? charging : notcharging document.getElementById( chargingtime ).textContent=battery.chargingTime; document.getElementById( dischargingtime ).textContent=battery.dischargingTime; document.getElementById( level ).textContent=battery.level*100; } if(battery){ displayBatteryStats(); battery.addEventListener( chargingchange ,displayBatteryStats,false); battery.addEventListener( chargingtimechange ,displayBatteryStats,false); battery.addEventListener( dischargingtimechange ,displayBatteryStats,false); battery.addEventListener( levelchange ,displayBatteryStats,false); }else{ document.getElementById( stats ).textContent= Sorry,yourbrowserdoesnotsupporttheBatteryStatusAPI ; } },false); /script /head body dividdivid= stats Yourbatteryiscurrently spanidspanid= charging /span . br/ Yourbatterywillbechargedin spanidspanid= chargingtime /span seconds. br/ Yourbatterywillbedischargedin spanidspanid= dischargingtime /span seconds. br/ Yourbatterylevelis spanidspanid= level /span %. /div /body /html
結論本文為Battery Status API給出了一個完整的總結和展示,盡管其仍未得到主流支持,但是這只是時間問題。考慮到移動互聯網的激增,開發者應該盡快將電池信息納入設計范疇內。
html教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 英山县| 贵港市| 华亭县| 新昌县| 土默特左旗| 北流市| 荃湾区| 榆树市| 浏阳市| 鲁山县| 宜良县| 大兴区| 越西县| 广水市| 东平县| 台山市| 南丹县| 博湖县| 无极县| 甘孜| 宜兰市| 渭源县| 昭平县| 连南| 嘉善县| 荔浦县| 扬州市| 宜君县| 平谷区| 青海省| 新昌县| 即墨市| 百色市| 驻马店市| 汝阳县| 呼玛县| 彝良县| 茂名市| 文山县| 广汉市| 平谷区|