<!-- 引入Bootstrap JS -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script> 为什么最后引入
例子
<!-- templates/inspection_records.html --><!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>机房巡检记录</title><!-- 引入Bootstrap CSS --><link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
</head>
<body><div class="container mt-4"><h1 class="mb-4">机房巡检记录</h1><div class="table-responsive"><table class="table table-striped table-hover"><thead><tr><th>机房名称</th><th>巡检人员</th><th>巡检日期</th><th>温度(摄氏度)</th><th>湿度(百分比)</th><th>服务器状态</th><th>交换机状态</th><th>发现的问题</th></tr></thead><tbody>{% for record in records %}<tr><td>{{ record.room_name }}</td><td>{{ record.inspector }}</td><td>{{ record.inspection_date }}</td><td>{{ record.temperature }}</td><td>{{ record.humidity }}</td><td>{{ record.get_server_status_display }}</td><td>{{ record.get_switch_status_display }}</td><td>{{ record.issues_found }}</td></tr>{% endfor %}</tbody></table></div></div><!-- 引入Bootstrap JS --><script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>
</body>
</html>
在典型的Web开发流程中,通常将页面的样式(CSS)文件放在 <head>
标签中引入,而将页面的脚本(JavaScript)文件放在页面底部,即在 </body>
标签之前引入。这样做有几个原因:
-
提高性能: 将 JavaScript 文件放在页面底部可以提高页面加载性能。当浏览器遇到 JavaScript 文件时,它会阻塞页面的渲染,直到该文件完全加载和执行。通过将 JavaScript 文件置于页面底部,可以使页面其他内容更快地加载和呈现给用户。
-
避免阻塞渲染: 放置 JavaScript 文件在底部有助于避免阻塞页面内容的渲染。如果 JavaScript 文件位于页面顶部,浏览器会等待 JavaScript 加载和执行后才继续渲染其余内容,导致页面显示延迟。
-
保证脚本依赖性: 通常,JavaScript 文件可能依赖于页面上已经存在的元素或结构。将 JavaScript 文件放在底部可以确保页面上所需的 HTML 结构已经加载,避免了可能由于缺少依赖项而导致的错误。
总结来说,将 JavaScript 文件放在页面底部可以改善页面加载性能并确保更好的用户体验。在上述示例中,我们将 Bootstrap 的 JavaScript 文件放在页面底部,以便达到这些优势。
展示效果
根据这个文章 使用django model 建立一个机房巡检记录表
然后写了一个前端页面
再次优化
<!-- templates/inspection_records.html --><!DOCTYPE html>
<html>
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>机房巡检记录</title><!-- 引入Bootstrap CSS --><link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
</head>
<body><div class="container mt-4"><h1 class="mb-4">机房巡检记录</h1><div class="table-responsive"><table class="table table-striped table-hover"><thead><tr><th>机房名称</th><th>巡检人员</th><th>巡检日期</th><th>温度(摄氏度)</th><th>湿度(百分比)</th><th>服务器状态</th><th>交换机状态</th><th>发现的问题</th></tr></thead><tbody>{% for record in records %}<tr><td>{{ record.room_name }}</td><td>{{ record.inspector }}</td><td>{{ record.inspection_date }}</td><td style="color: {% if record.temperature > 25 %}red{% else %}green{% endif %}">{{ record.temperature }}</td><td style="color: {% if record.humidity > 70 %}red{% else %}green{% endif %}">{{ record.humidity }}</td><td style="background-color: {% if record.server_status == '异常' %}red{% else %}green{% endif %}">{{ record.get_server_status_display }}</td><td style="background-color: {% if record.switch_status == '异常' %}red{% else %}green{% endif %}">{{ record.get_switch_status_display }}</td><td>{{ record.issues_found }}</td></tr>{% endfor %}</tbody></table><!-- 引入Bootstrap JS --><script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>
</body>
</html>