Heim  >  Artikel  >  Web-Frontend  >  JavaScript-Methode zum Implementieren des Batteriestatus

JavaScript-Methode zum Implementieren des Batteriestatus

coldplay.xixi
coldplay.xixinach vorne
2020-08-28 16:54:362909Durchsuche

JavaScript-Methode zum Implementieren des Batteriestatus

[Verwandte Grafik- und Textempfehlungen: js-Tutorial (Grafik und Text)]

Ab Mozilla Aurora 11 hat Firefox einige neue Funktionen implementiert, darunter die grundlegende Implementierung der Batteriestatusschnittstelle. Diese sehr einfache Schnittstelle kann Ihnen Informationen über den aktuellen Akkuladestand, ob der Akku geladen wird und einige Ereignisse zu Batteriestatusänderungen liefern. Schauen wir uns den Effekt an!

Das Batterieobjekt wird in window.navigator.battery gespeichert, aber da Firefox diese Schnittstelle zum ersten Mal implementiert und bereitstellt, ist sie noch nicht beliebt. Sie müssen window verwenden .navigator.mozBattery Diese Schreibweise. Dieses mozBattery-Objekt hat die folgenden Eigenschaften: window.navigator.battery里,但因为这是火狐浏览器首次实现并提供这个接口,并未普及,你需要使用window.navigator.mozBattery这种写法。这个mozBattery对象有下列属性:

  • charging: 表示当前电池设备是否在充电。如果电池没有充电,这个值为false。如果为true,表明电池正在充电。当前的API实现里不能得到是否充满的信息,也无法判断当前设备是否有电池。
  • chargingTime: 是指距离电池充满还需要多久。
  • dischargingTime: 电池已使用时间
  • level: 表示电量等级,从0到1.0。当这个值为0时,表示电量耗尽,系统即将关机。如果为1.0,则表示电池满电。

针对这些状态,接口里提供了各自相应的事件,包括onchargingchange, onchargingtimechange, ondischargingtimechange, 和 onlevelchange

  • Laden: Gibt an, ob das aktuelle Batteriegerät geladen wird. Wenn der Akku nicht geladen ist, ist dieser Wert falsch. Wenn dies der Fall ist, wird der Akku geladen. Die aktuelle API-Implementierung kann weder Informationen darüber erhalten, ob das Gerät voll ist, noch kann sie feststellen, ob das aktuelle Gerät über einen Akku verfügt.
  • Ladezeit: bezieht sich darauf, wie lange es dauert, bis der Akku vollständig aufgeladen ist.
  • entladezeit: Batterienutzungszeit.
  • level: Gibt die Leistungsstufe an, von 0 bis 1,0. Wenn dieser Wert 0 ist, bedeutet dies, dass die Batterie leer ist und das System kurz vor dem Herunterfahren steht. Wenn der Wert 1,0 beträgt, bedeutet dies, dass der Akku vollständig geladen ist.
Für diese Zustände stellt die Schnittstelle entsprechende Ereignisse bereit, darunter onLadewechsel, onLadezeitwechsel, onEntladezeitwechsel und onlevelchange. Die grundlegende Verwendung ist einfach:

// 获取电池对象!
var battery = navigator.battery || navigator.webkitBattery || navigator.mozBattery;

// 显示一些有用属性值
console.warn("电池充电状态: ", battery.charging); // true
console.warn("电量水平: ", battery.level); // 0.58
console.warn("电池使用时间: ", battery.dischargingTime);

// 设置一些事件监听器
battery.addEventListener("chargingchange", function(e) {
	console.warn("电池充电状态变化: ", battery.charging);
}, false);
battery.addEventListener("chargingtimechange", function(e) {
	console.warn("电池充电时间变化: ", battery.chargingTime);
}, false);
battery.addEventListener("dischargingtimechange", function(e) {
	console.warn("电池使用时间变化: ", battery.dischargingTime);
}, false);
battery.addEventListener("levelchange", function(e) {
	console.warn("电量水平变化: ", battery.level);
}, false);

Ziemlich einfach, nicht wahr? Diese Schnittstellen sind alle großartig: einfach, effizient und praktisch!

Warum diese Batterie-Programmierschnittstellen verwenden? Weil viele mobile Anwendungen, die mit Browsern (nicht nativ) gepackt sind, den aktuellen Status des Systems kennen müssen. Einige CPUs reagieren sehr empfindlich auf die Stromversorgung. Das Gerät muss vor der Ausführung bestimmter Spezialaufgaben über ausreichend Strom verfügen. Die App sollte den Benutzer im Voraus daran erinnern, dass die Stromversorgung niedrig ist.

Verwandte Lernempfehlungen: Javascript-Lerntutorial

🎜

Das obige ist der detaillierte Inhalt vonJavaScript-Methode zum Implementieren des Batteriestatus. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:webhek.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen