ESP32-Web-Server编程- JS 基础 3

ESP32-Web-Server编程- JS 基础 3

概述

本示例演示通过 button 控件的 onclick 内联属性,实现在网页上点击按钮,切换 LED 灯图标的转变。

示例解析

前端设计

前端代码建立了一个 id 为 "imageLamp" 的图片对象。并建立两个按钮,设计两个按钮的 onclick 事件为引用不同的图片。

复制代码
<p>
  <img id="imageLamp" src="light_on.png">
</p>
<p>
  <button onclick="document.getElementById('imageLamp').src='light_on.png'">Turn on the light</button>
</p>
<p>
  <button onclick="document.getElementById('imageLamp').src='light_off.png'">Turn off the light</button>
</p>

后端设计

前端在加载图片时会自动向 web 服务器发起请求图片的 get 请求,因此后端代码增加了发送两个图片的 handler:

复制代码
{"/light_on.png", HTTP_GET, light_on_get_handler, NULL},
{"/light_off.png", HTTP_GET, light_off_get_handler, NULL},

示例效果

点击不同的按钮可以切换网页的显示效果:

总结

1)本节主要是演示最常见的控件-button,以及可以绑定一个事件来描述按钮按下时发生的行为。

资源链接

1)ESP32-Web-Server ESP-IDF系列博客介绍

2)对应示例的 code 链接 (点击直达代码仓库)

3)下一篇:ESP32-Web-Server编程- JS 基础 4

(码字不易感谢点赞或收藏)

相关推荐
wearegogog1231 小时前
基于 MATLAB 的卡尔曼滤波器实现,用于消除噪声并估算信号
前端·算法·matlab
Drawing stars1 小时前
JAVA后端 前端 大模型应用 学习路线
java·前端·学习
品克缤1 小时前
Element UI MessageBox 增加第三个按钮(DOM Hack 方案)
前端·javascript·vue.js
小二·1 小时前
Python Web 开发进阶实战:性能压测与调优 —— Locust + Prometheus + Grafana 构建高并发可观测系统
前端·python·prometheus
小沐°1 小时前
vue-设置不同环境的打包和运行
前端·javascript·vue.js
qq_419854052 小时前
CSS动效
前端·javascript·css
烛阴2 小时前
3D字体TextGeometry
前端·webgl·three.js
桜吹雪2 小时前
markstream-vue实战踩坑笔记
前端
南村群童欺我老无力.3 小时前
Flutter应用鸿蒙迁移实战:性能优化与渐进式迁移指南
javascript·flutter·ci/cd·华为·性能优化·typescript·harmonyos
C_心欲无痕3 小时前
nginx - 实现域名跳转的几种方式
运维·前端·nginx