当前位置:首页 > JavaScript

js实现led

2026-03-14 23:12:43JavaScript

LED 效果实现方法

使用 JavaScript 实现 LED 效果可以通过多种方式完成,以下是几种常见的方法:

HTML/CSS 结构

<div class="led" id="led"></div>

CSS 样式

.led {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: grey;
}

基础 JavaScript 控制

const led = document.getElementById('led');
let isOn = false;

function toggleLed() {
  isOn = !isOn;
  led.style.backgroundColor = isOn ? 'red' : 'grey';
}

// 每1秒切换一次状态
setInterval(toggleLed, 1000);

高级 LED 效果

RGB LED 实现

const colors = ['red', 'green', 'blue'];
let currentColor = 0;

function changeColor() {
  led.style.backgroundColor = colors[currentColor];
  currentColor = (currentColor + 1) % colors.length;
}

setInterval(changeColor, 500);

使用 Canvas 实现 LED 矩阵

HTML 结构

<canvas id="ledMatrix" width="300" height="100"></canvas>

JavaScript 代码

const canvas = document.getElementById('ledMatrix');
const ctx = canvas.getContext('2d');
const ledSize = 10;
const spacing = 5;
const rows = 5;
const cols = 20;

function drawLedMatrix() {
  ctx.clearRect(0, 0, canvas.width, canvas.height);

  for (let row = 0; row < rows; row++) {
    for (let col = 0; col < cols; col++) {
      const x = col * (ledSize + spacing);
      const y = row * (ledSize + spacing);
      const isActive = Math.random() > 0.7;

      ctx.beginPath();
      ctx.arc(x + ledSize/2, y + ledSize/2, ledSize/2, 0, Math.PI * 2);
      ctx.fillStyle = isActive ? '#ff0000' : '#330000';
      ctx.fill();
    }
  }
}

setInterval(drawLedMatrix, 100);

使用 CSS 动画增强效果

CSS 添加发光效果

.led.active {
  box-shadow: 0 0 10px 5px rgba(255, 0, 0, 0.7);
  animation: pulse 0.5s infinite alternate;
}

@keyframes pulse {
  from { box-shadow: 0 0 5px 2px rgba(255, 0, 0, 0.7); }
  to { box-shadow: 0 0 20px 10px rgba(255, 0, 0, 0.7); }
}

JavaScript 控制类切换

js实现led

function toggleLed() {
  led.classList.toggle('active');
}

这些方法可以根据具体需求进行组合和调整,实现从简单到复杂的各种 LED 效果。

标签: jsled
分享给朋友:

相关文章

js实现全选

js实现全选

实现全选功能的方法 在JavaScript中实现全选功能通常涉及监听全选复选框的点击事件,并根据其状态控制其他复选框的选中状态。以下是几种常见的实现方式: 基础DOM操作实现 通过获取所有目标复选框…

js实现验证

js实现验证

验证表单输入 使用JavaScript验证表单输入是常见的需求。可以通过监听表单提交事件,检查输入字段是否符合要求。 document.getElementById('myForm').addEve…

js实现祖玛

js实现祖玛

实现祖玛游戏的核心思路 祖玛游戏的核心玩法是发射彩色珠子,形成三个或以上相同颜色的珠子即可消除。以下是使用JavaScript实现的基本框架。 游戏初始化 创建画布并初始化游戏状态: const…

js实现图

js实现图

JavaScript 实现图的常用方法 在 JavaScript 中,图(Graph)可以通过多种方式实现,常见的包括邻接表(Adjacency List)和邻接矩阵(Adjacency Matrix…

js实现上传文件

js实现上传文件

文件上传的基本实现 使用HTML的<input type="file">元素配合JavaScript的File API可以实现文件上传功能。 <input type="file"…

js实现滑动

js实现滑动

实现滑动效果的方法 在JavaScript中实现滑动效果可以通过多种方式完成,以下是几种常见的实现方法: 使用CSS过渡和JavaScript触发 通过CSS定义过渡效果,JavaScript控制触…