新学一个JavaScript 的 classList API

一、语法
javascript 复制代码
element.classList.toggle(className);
二、场景用法:

点击一张图片放大再次点击的时候缩小

3、demo代码
javascript 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>图片放大缩小 Demo</title>
  <style>
    .image-container {
      width: 200px;
      height: 200px;
      display: flex;
      justify-content: center;
      align-items: center;
      overflow: hidden; /* 超过容器尺寸的部分隐藏 */
      border: 1px solid #ddd;
    }

    .image-container img {
      width: 100%; /* 图片填充容器 */
      transition: transform 0.3s ease-in-out; /* 动画效果 */
    }

    /* 放大后的样式 */
    .image-container.enlarged img {
      transform: scale(1.8); /* 放大1.8倍 */
    }
  </style>
</head>
<body>

  <div class="image-container" id="imageContainer">
    <img src="https://via.placeholder.com/200" alt="点击放大缩小" id="image">
  </div>

  <script>
    // 获取元素
    const imageContainer = document.getElementById('imageContainer');

    // 点击事件
    imageContainer.addEventListener('click', () => {
      // 切换放大缩小效果
      imageContainer.classList.toggle('enlarged');
    });
  </script>

</body>
</html>
相关推荐
2401_873479406 小时前
如何利用IP查询定位识别电商刷单?4个关键指标+工具配置方案
开发语言·tcp/ip·php
我爱cope7 小时前
【从0开始学设计模式-10| 装饰模式】
java·开发语言·设计模式
菜鸟学Python7 小时前
Python生态在悄悄改变:FastAPI全面反超,Django和Flask还行吗?
开发语言·python·django·flask·fastapi
浪浪小洋8 小时前
c++ qt课设定制
开发语言·c++
charlie1145141918 小时前
嵌入式C++工程实践第16篇:第四次重构 —— LED模板,从通用GPIO到专用抽象
c语言·开发语言·c++·驱动开发·嵌入式硬件·重构
故事和你918 小时前
洛谷-数据结构1-4-图的基本应用1
开发语言·数据结构·算法·深度优先·动态规划·图论
幺风9 小时前
Claude Code 源码分析 — Tool/MCP/Skill 可扩展工具系统
前端·javascript·ai编程
程序猿编码9 小时前
给你的网络流量穿件“隐形衣“:手把手教你用对称加密打造透明安全隧道
linux·开发语言·网络·安全·linux内核
ID_180079054739 小时前
淘宝 API 上货 / 商品搬家 业务场景实现 + JSON 返回示例
前端·javascript·json
M ? A9 小时前
Vue 动态组件在 React 中,VuReact 会如何实现?
前端·javascript·vue.js·经验分享·react.js·面试·vureact