获取Firefox的电池电量



我正在做一个处理用户当前电池电量的项目。我在互联网上搜索了一下,但找不到一个适用于Firefox的解决方案。我的代码(见下文)可以很好地用于Chrome(桌面和移动),但不适合Firefox。

是否有一个解决方案可以在所有浏览器中使用,或者至少是一个适用于Firefox的解决方案?

window.navigator.getBattery().then(function (battery) {
var chargingStatus = "Not Charging";
if (String(battery.charging) == "true") chargingStatus = "Charging";
batteryLevel.innerHTML =
String(battery.level * 100) + "% ( " + chargingStatus + " )";
battery.addEventListener("levelchange", function () {
chargingStatus = "Not Charging";
if (String(battery.charging) == "true") chargingStatus = "Charging";
batteryLevel.innerHTML =
String(battery.level * 100) + "% ( " + chargingStatus + " )";
});
battery.addEventListener("chargingchange", function () {
chargingStatus = "Not Charging";
if (String(battery.charging) == "true") chargingStatus = "Charging";
batteryLevel.innerHTML =
String(battery.level * 100) + "% ( " + chargingStatus + " )";
});
});

Firefox

出现错误

Mozilla Firefox目前不支持电池状态API(浏览器兼容性电池状态API (MDN))。似乎Firefox 43确实对早期版本的规范提供了基本的支持,但后来它被删除了。

由于该功能被认为已弃用,因此Mozilla现在或将来都不太可能重新添加任何此类支持。

链接的MDN页面上的指导说明了您需要知道的一切(重点是我的):

不再推荐此功能。虽然一些浏览器可能仍然支持它,但它可能已经从相关的web标准中删除,可能正在被删除,或者可能只是出于兼容性的目的而保留。避免使用它,并尽可能更新现有代码;请参阅本页底部的兼容性表来指导您的决定。请注意,此功能可能随时停止工作。

最新更新