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

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

相关推荐
万物得其道者成2 小时前
前端大整数精度丢失:一次踩坑后的实战解决方案(`json-bigint`)
前端·json
鹏北海2 小时前
移动端 H5 响应式字体适配方案完全指南
前端
姜太公钓鲸2333 小时前
ROM就是程序存储器,实际的存储介质是Flash闪存。上述描述中的程序存储器是什么意思?
开发语言·javascript·ecmascript
柳杉4 小时前
使用AI从零打造炫酷医疗数据可视化大屏,源码免费拿!
前端·javascript·数据可视化
凌云拓界4 小时前
前端开发的“平衡木”:在取舍之间找到最优解
前端·性能优化·架构·前端框架·代码规范·设计规范
zhengfei6115 小时前
【XSS payload 】一个经典的XSS payload
前端·xss
简单Janeee5 小时前
[Vue 3 从零到上线]-第四篇:组件化思维——把网页像积木一样拆解
javascript·vue.js·ecmascript
全栈老石6 小时前
手写一个无限画布 #1:坐标系的谎言
前端·canvas
XW01059996 小时前
4-11判断素数
前端·python·算法·素数
J2虾虾6 小时前
Spring Boot中使用@Scheduled做定时任务
java·前端·spring boot