JavaScript动态控制Div属性实例
在前端开发中,经常需要根据用户操作动态改变网页元素的视觉呈现。本文详细介绍如何使用 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 逻辑
利用数组存储对应的样式属性名及其新值,并通过事件循环为每个按钮绑定动作。
- 定义工具函数:创建一个通用的
changeStyle方法,接受元素对象、属性名和目标值进行赋值。 - 获取节点集合:获取所有输入按钮
input和目标容器div。 - 初始化数据映射:
oAtt(属性名):["width", "height", "background", "display", "display"]oVal(目标值):["200px", "200px", "red", "none", "block"]
- 循环绑定事件:遍历按钮,将当前索引存入
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 样式动态修改的资料请关注本站其它相关文章!
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













