JavaScript动态控制Div属性实例

Jasper
Jasper
发布时间:2026-10-13| 2人浏览过
原创

在前端开发中,经常需要根据用户操作动态改变网页元素的视觉呈现。本文详细介绍如何使用 JavaScript 动态操控 HTML div 的几何尺寸、颜色以及显示隐藏等核心属性,并附带可直接运行的完整代码。

动态更改元素样式的目标

通过脚本实时调整 DOM 对象的内联样式(Inline Styles),可以实现丰富的前端交互体验。主要实现的功能包括:

  • 调整元素宽度:width
  • 调整元素高度:height
  • 更改背景颜色:background
  • 控制元素显隐:display
  • 清除自定义样式:恢复初始状态

运行这些功能的效果如下:

操作步骤

第1步:搭建基础 HTML 结构

准备一个包含多个操作按钮和一个目标容器的布局。为了演示效果,容器需具备基本的宽高和背景。

<div id="outer">
    <!-- 控制按钮组 -->
    <input type="button" value="变宽" />
    <input type="button" value="变高" />
    <input type="button" value="改变颜色" />
    <input type="button" value="隐藏" />
    <input type="button" value="重置" />
    
    <!-- 待操控的目标 Div -->
    <div id="div1"></div>
</div>

第2步:编写 CSS 样式

为页面设置居中布局,并为目标 #div1 赋予默认值(宽度100px、黑色背景等)。

<style>
#outer {
    width: 500px;
    margin: 0 auto;
    padding: 0;
    text-align: center;
}
#div1 {
    width: 100px;
    height: 100px;
    background: black;
    margin: 10px auto;
    display: block;
}
</style>

第3步:编写 JavaScript 逻辑

利用数组存储对应的样式属性名及其新值,并通过事件循环为每个按钮绑定动作。

  1. 定义工具函数:创建一个通用的 changeStyle 方法,接受元素对象、属性名和目标值进行赋值。
  2. 获取节点集合:获取所有输入按钮 input 和目标容器 div。
  3. 初始化数据映射:
    • oAtt (属性名): ["width", "height", "background", "display", "display"]
    • oVal (目标值): ["200px", "200px", "red", "none", "block"]
  4. 循环绑定事件:遍历按钮,将当前索引存入 index 属性,监听点击事件执行样式切换或重置。
<script>
// 1. 通用样式修改函数
var changeStyle = function (elem, attr, value) {
    elem.style[attr] = value;
};

window.onload = function () {
    // 2. 获取所需节点
    var oBtn = document.getElementsByTagName("input");
    var oDiv = document.getElementById("div1");
    
    // 3. 建立属性到值的映射关系
    var oAtt = ["width","height","background","display","display"];
    var oVal = ["200px","200px","red","none","block"];
    
    // 4. 为每个按钮绑定点击事件
    for (var i = 0; i < oBtn.length; i++) {
        oBtn[i].index = i; // 将索引暂存在元素上
        oBtn[i].onclick = function () {
            // 如果点击的是最后一个按钮(索引等于总数-1),则执行重置
            if (this.index == oBtn.length - 1) {
                oDiv.style.cssText = "";
            } else {
                // 调用函数修改对应索引的属性
                changeStyle(oDiv, oAtt[this.index], oVal[this.index]);
            }
        }
    }
};
</script>

完成判断与结果确认

在浏览器中加载上述 HTML 代码后,观察目标 div 的表现:依次点击前四个按钮,应分别看到宽度翻倍、高度翻倍、背景变为红色、元素被隐藏;点击第五个“重置”按钮后,cssText 被清空,元素应当恢复到初始的 100x100 黑色方块状态。

简要总结

掌握了这种基于索引映射的动态属性修改技巧,可以极大简化前端页面的状态管理逻辑。以上就是使用 JavaScript 动态控制 div 属性的详细内容,更多关于 CSS 样式动态修改的资料请关注本站其它相关文章!

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。