html 设计表格显示IO端口 及其状态 ,状态使用圆形的图标表示,状态分为高电平低电平两种状态,分别用黑色与绿色表示.并且当用户点击对应的端口或者电平时会从当前状态变为另一种状态,对应的文字同时改变
时间: 2024-02-12 17:02:30 浏览: 27
html表格设计
5星 · 资源好评率100%
下面是一个示例代码,用于展示如何使用 HTML 和 JavaScript 实现您所描述的表格显示 IO 端口及其状态的功能:
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>IO 端口状态表格</title>
<style>
table {
border-collapse: collapse;
}
td {
border: 1px solid black;
padding: 10px;
text-align: center;
}
.high {
color: white;
background-color: black;
}
.low {
color: white;
background-color: green;
}
.status {
display: inline-block;
width: 20px;
height: 20px;
border-radius: 50%;
}
</style>
</head>
<body>
<table>
<thead>
<tr>
<th>端口号</th>
<th>状态</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>
<div class="status high"></div>
<span>高电平</span>
</td>
</tr>
<tr>
<td>2</td>
<td>
<div class="status low"></div>
<span>低电平</span>
</td>
</tr>
<tr>
<td>3</td>
<td>
<div class="status high"></div>
<span>高电平</span>
</td>
</tr>
<tr>
<td>4</td>
<td>
<div class="status low"></div>
<span>低电平</span>
</td>
</tr>
</tbody>
</table>
<script>
// 获取所有状态元素
var statusElems = document.querySelectorAll('.status');
// 遍历所有状态元素,为其添加点击事件处理函数
for (var i = 0; i < statusElems.length; i++) {
var statusElem = statusElems[i];
// 为每个状态元素设置初始状态
setStatus(statusElem, statusElem.classList.contains('high') ? 'high' : 'low');
// 为状态元素添加点击事件处理函数
statusElem.addEventListener('click', function() {
// 获取当前状态
var status = this.classList.contains('high') ? 'high' : 'low';
// 切换状态
setStatus(this, status === 'high' ? 'low' : 'high');
});
}
// 设置状态
function setStatus(statusElem, status) {
statusElem.classList.remove('high', 'low');
statusElem.classList.add(status);
statusElem.nextElementSibling.innerText = status === 'high' ? '高电平' : '低电平';
}
</script>
</body>
</html>
```
在这个示例中,我们使用了 HTML 表格元素来显示 IO 端口及其状态,使用 CSS 样式来设置表格的样式和状态图标的样式。通过 JavaScript 代码动态添加点击事件处理函数和切换状态的逻辑。当用户点击状态图标时,会切换状态,并且对应的文字也会随之改变。
阅读全文