新学一个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>
相关推荐
会跑的葫芦怪5 小时前
若依Vue 项目多子路径配置
前端·javascript·vue.js
兩尛5 小时前
c++知识点2
开发语言·c++
fengfuyao9855 小时前
海浪PM谱及波形的Matlab仿真实现
开发语言·matlab
xiaoye-duck5 小时前
C++ string 底层原理深度解析 + 模拟实现(下)——面试 / 开发都适用
开发语言·c++·stl
xiaoqi9226 小时前
React Native鸿蒙跨平台如何进行狗狗领养中心,实现基于唯一标识的事件透传方式是移动端列表开发的通用规范
javascript·react native·react.js·ecmascript·harmonyos
jin1233226 小时前
React Native鸿蒙跨平台剧本杀组队消息与快捷入口组件,包含消息列表展示、快捷入口管理、快捷操作触发和消息详情预览四大核心功能
javascript·react native·react.js·ecmascript·harmonyos
Hx_Ma166 小时前
SpringMVC框架提供的转发和重定向
java·开发语言·servlet
期待のcode7 小时前
原子操作类LongAdder
java·开发语言
烬头88218 小时前
React Native鸿蒙跨平台实现二维码联系人APP(QRCodeContactApp)
javascript·react native·react.js·ecmascript·harmonyos
pas1368 小时前
40-mini-vue 实现三种联合类型
前端·javascript·vue.js