用html实现制作一个10x5表格,现在有一个按钮,当点击按钮的时候,单数行背景颜色为红色,双数行背景颜色为绿色
时间: 2024-10-14 22:05:30 浏览: 22
AgentWebX5 是基于腾讯X5 的一个Web库.zip
要使用HTML和CSS实现这样一个功能,首先创建一个基本的10x5表格,并添加一个按钮用于触发颜色切换。下面是详细的步骤:
1. 创建HTML结构:
```html
<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<title>动态颜色表格</title>
<style>
/* 初始样式 */
.even {
background-color: green;
}
.odd {
background-color: red;
}
</style>
</head>
<body>
<table id="dynamicTable" border="1">
<!-- 表格内容将通过JavaScript填充 -->
<tbody></tbody>
</table>
<button onclick="toggleRowColors()">点击改变颜色</button>
<script src="script.js"></script>
</body>
</html>
```
这里我们在`<head>`里预先设置了默认的偶数行绿色、奇数行红色的样式。
2. JavaScript部分(script.js):
```javascript
window.onload = function() {
// 创建10x5的行数据
var data = [];
for (let i = 0; i < 10; i++) {
data.push(i % 2 === 0 ? '偶数行' : '奇数行');
}
// 将数据填充到表格
var tableBody = document.getElementById('dynamicTable').getElementsByTagName('tbody')[0];
for (let i = 0; i < 10; i++) {
let row = document.createElement('tr');
row.innerHTML = `<td>${data[i]}</td>`;
if (i % 2 === 0) {
row.classList.add('even');
} else {
row.classList.add('odd');
}
tableBody.appendChild(row);
}
// 点击事件函数
function toggleRowColors() {
let rows = document.querySelectorAll('#dynamicTable tr');
rows.forEach((row) => {
if (row.classList.contains('even')) {
row.classList.remove('even');
row.classList.add('odd');
} else {
row.classList.remove('odd');
row.classList.add('even');
}
});
}
};
```
这个JavaScript脚本会在页面加载完成后填充表格并设置初始颜色,同时定义了`toggleRowColors`函数,该函数会在按钮点击时交换所有行的颜色。
阅读全文