📅  最后修改于: 2023-12-03 14:57:42.448000             🧑  作者: Mango
语义 UI 是指通过语义化的 HTML 标签和属性,以及结构化的 CSS 类名来实现样式和交互的编写方式。语义 UI 可以帮助开发者写出更加易于阅读和维护的代码。
在语义 UI 中,表格是一个比较常见的组件。为了增强表格的可读性和交互性,我们通常需要对表格的选中行进行变化。下面,我们将介绍如何利用语义 UI 的思想,实现表格的可选行变化功能。
在开始编写代码之前,我们需要先引入相关的库和样式文件。其中,我们使用 jQuery 作为 JavaScript 库,使用 Semantic UI 作为 CSS 框架。请在 HTML 文件中添加以下代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Example</title>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.4.1/semantic.min.css">
</head>
<body>
<table class="ui celled table">
<thead>
<tr>
<th>Name</th>
<th>Age</th>
<th>Gender</th>
</tr>
</thead>
<tbody>
<tr>
<td>John</td>
<td>25</td>
<td>Male</td>
</tr>
<tr>
<td>Jane</td>
<td>23</td>
<td>Female</td>
</tr>
<tr>
<td>Bob</td>
<td>30</td>
<td>Male</td>
</tr>
</tbody>
</table>
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.4.1/semantic.min.js"></script>
</body>
</html>
接下来,我们需要编写 JavaScript 代码来实现表格的可选行变化。我们将使用 jQuery 和 Semantic UI 提供的功能来实现这个功能。
首先,我们需要给表格的每一行添加点击事件,以便我们能够获取到被选中的行。代码如下:
$('.ui.table tbody tr').click(function() {
$(this).addClass('active').siblings().removeClass('active');
});
在这段代码中,我们使用了 $()
函数来选中表格中的每一行。然后,我们使用 click()
函数来绑定点击事件,当用户点击某一行时,就会触发这个事件。在事件处理函数中,我们使用 addClass()
函数来为被选中的行添加 active
类名,这个类名是 Semantic UI 提供的用于高亮显示选中行的类名。同时,我们使用 siblings()
函数来获取到同级的所有行,然后使用 removeClass()
函数来移除这些行的 active
类名,以确保只有当前被选中的行拥有 active
类名。
最后,我们需要在 CSS 样式文件中添加 active
类名的样式。这里我们使用 Semantic UI 提供的默认样式即可。代码如下:
.ui.table tbody tr.active {
background-color: #85d1ff !important;
}
在上面的代码中,我们使用了 .ui.table tbody tr.active
选择器来选中拥有 active
类名的行,并使用 background-color
属性来设置其背景颜色。
通过以上的步骤,我们就可以实现表格的可选行变化功能了。在这个过程中,我们充分运用了语义 UI 的思想,以语义化的标签和结构化的类名来实现样式和交互的编写方式。这样可以让我们写出更加易于阅读和维护的代码,提升开发效率和代码质量。