使用 JavaScript 获取电池状态

在现代的移动设备和笔记本电脑上,了解电池状态是一项非常有用的功能。使用 JavaScript 可以轻松地获取电池的充电状态、电量百分比等信息。本文将介绍如何使用 JavaScript 访问这些信息,并将其显示在网页上。

1. HTML 结构

首先,我们需要一个简单的 HTML 结构来显示电池状态信息:

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Battery Status</title>
</head>
<body>
  <div>
    <h1>Battery Status</h1>
    <p><strong>Charge Level:</strong> <span id="charge-level">--</span>%</p>
    <p><strong>Charging:</strong> <span id="charging-status">--</span></p>
  </div>

  <script src="battery.js"></script>
</body>
</html>

2. JavaScript 代码

接下来,我们创建 battery.js 文件,并在其中编写 JavaScript 代码来获取和更新电池状态信息:

javascript 复制代码
document.addEventListener("DOMContentLoaded", function() {
  navigator.getBattery().then(function(battery) {

    function updateBatteryInfo() {
      document.getElementById('charge-level').textContent = battery.level * 100 + '%';
      document.getElementById('charging-status').textContent = battery.charging ? 'Charging' : 'Not Charging';
    }

    // 初始化电池信息
    updateBatteryInfo();

    // 当电池状态发生变化时更新信息
    battery.addEventListener('levelchange', updateBatteryInfo);
    battery.addEventListener('chargingchange', updateBatteryInfo);
  });
});

在这段代码中,我们首先通过 navigator.getBattery() 方法获取电池对象,然后注册了两个事件监听器,分别是 levelchangechargingchange,用于在电池状态发生变化时更新网页上的信息。

相关推荐
默_笙几秒前
🍉 我把《天龙八部》喂给了 AI,问它"段誉会什么武功?"答案让我惊呆了
前端·javascript
bonechips21 分钟前
useRef + Web Worker:React 中的多线程计算
前端·javascript
渣波29 分钟前
从“迷路”到“瞬移”:彻底搞懂 React Router 的 `useLocation` 与 `useNavigate`
前端·javascript
橘子星31 分钟前
React Context + 自定义 Hooks:告别 Props 地狱,一行代码跨层级传数据
前端·javascript
触底反弹34 分钟前
🔥 别再只用 useRef 拿 DOM 了!这 5 个实战场景让你彻底理解它(附源码解析 + 面试题)
前端·javascript·react.js
小僧景贤35 分钟前
嵌入式C语言 第十一篇:成长路线|嵌入式C工程师完整进阶学习路径(从零到工程级落地|含周期+实战项目)
c语言·开发语言·学习
BreezeJiang36 分钟前
Web Worker 不负责渲染:React 中的线程分工与消息闭环
javascript·react.js
做前端的娜娜子37 分钟前
JavaScript 闭包
前端·javascript·掘金·金石计划
何时梦醒38 分钟前
🎯 从零彻底搞懂 React Context API —— 一篇带你穿越"组件树"的状态共享方案
前端·javascript·react.js
渣波38 分钟前
拒绝页面假死!React 并发编程实战:Web Worker + useRef 深度解析与高性能计算架构
前端·javascript