django 模板js文件为什么最后引入

<!-- 引入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> 标签之前引入。这样做有几个原因:

  1. 提高性能: 将 JavaScript 文件放在页面底部可以提高页面加载性能。当浏览器遇到 JavaScript 文件时,它会阻塞页面的渲染,直到该文件完全加载和执行。通过将 JavaScript 文件置于页面底部,可以使页面其他内容更快地加载和呈现给用户。

  2. 避免阻塞渲染: 放置 JavaScript 文件在底部有助于避免阻塞页面内容的渲染。如果 JavaScript 文件位于页面顶部,浏览器会等待 JavaScript 加载和执行后才继续渲染其余内容,导致页面显示延迟。

  3. 保证脚本依赖性: 通常,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>

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/809143.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ShardingSphere再回首

概念&#xff1a; 连接&#xff1a;通过协议 方言及库存储的适配&#xff0c;连接数据和应用&#xff0c;关注多模数据苦之间的合作 增量&#xff1a;抓取库入口流量题提供重定向&#xff0c; 流量变形(加密脱敏)/鉴权/治理(熔断限流)/分析等 可插拔&#xff1a;微内核 DDL:cr…

【C#】C#匹配两个相似的字符串莱文斯坦距离

文章目录 一、问题描述二、代码三、解释 一、问题描述 需要匹配多个类似的内容&#xff0c;并且要求相似度在70%以上并且长度相近&#xff0c;可以在处理每个匹配项时&#xff0c;将其与所有目标进行比较&#xff0c;并筛选出符合条件的匹配项。 二、代码 using System; usi…

2024最新AI系统【SparkAI】,ChatGPT商业运营版系统源码/ai问答/ai绘画/GPTs,SunoAI音乐生成大模型/带分销AIGC搭建部署教程

一、文章前言 SparkAi创作系统是基于ChatGPT进行开发的ai智能问答系统和Midjourney-AI绘画系统&#xff0c;支持OpenAI-GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美&#xff0c;那么如何搭建部署AI创作ChatGPT&#xff1f;小编这里写一个详细图文教程吧。已…

vue 插槽使用

父控件 使用子控件时&#xff0c;为了能让子控件 在控件上面使用灵活多变&#xff0c;这里使用插槽。 简单插槽使用 <script>// 创建 vue实例const app Vue.createApp({ data() { return {text: 提交 } },// slot 插槽// slot 中使用的数据&#xff0c;作用域的问题&…

如何在 OpenLDAP 服务器上更改账户密码

简介 LDAP 系统通常用于存储用户账户信息。事实上&#xff0c;一些最常见的 LDAP 认证方法涉及存储在 LDAP 条目中的账户信息。 无论您的 LDAP 条目是被外部服务用于账户信息还是仅用于 LDAP 特定的授权绑定&#xff0c;密码管理都变得很重要。在本指南中&#xff0c;我们将讨…

MySQL进阶一

目录 1.使用环境 2.条件判断 2.1.case when 2.2.if 3.窗口函数 3.1.排序函数 3.2.聚合函数 ​​​​​​​3.3.partiton by ​​​​​​​3.4.order by 4.待续 1.使用环境 数据库&#xff1a;MySQL 8.0.30 客户端&#xff1a;Navicat 15.0.12 2.条件判断 2.1.ca…

手机银行客户端框架之EMAS介绍

EMAS简介 阿里巴巴应用研发平台&#xff08;Enterprise Mobile Application Studio&#xff0c;简称EMAS&#xff09;&#xff0c;是面向全端场景&#xff08;移动App、H5应用、小程序、Web应用、PC应用等&#xff09;的一站式应用研发平台。EMAS基于广泛的云原生技术&#xf…

5G智慧港口简介(一)

引言 港口作为交通运输的枢纽,在促进国际贸易和地区发展中起着举足轻重的作用,全球贸易中约 90% 的贸易由海运业承载,作业效率对于港口至关重要。在“工业 4.0”、“互联网 +”大发展的时代背景下,港口也在进行数字化、全自动的转型升级。随着全球 5G 技术浪潮的到来,华为…

Django域名根目录文件验证

以文件 MP_verify_QtVCdC7027HW9cjA.txt 为例 在Django项目中&#xff0c;为了让特定文件如MP_verify_QtVCdC7027HW9cjA.txt能够被访问&#xff0c;你需要将文件放置在Django项目的某个位置&#xff0c;并确保在URL配置中有相应的路由指向该文件。一种简单的方法是将其放置在你…

用国内版Devin:DevOpsGPT开发一个简易官网

前言&#xff1a; 世界上第一个AI程序员Devin想必已经给大家带来了不小的震撼&#xff0c;这种L4级的技术也许已经昭示着AGI离我们或许真的不远了。 这里先给大家普及一个概念&#xff1a; L4是谷歌对AGI划分的第四个等级&#xff0c;把代码丢给 AI 改这个是 L1 或者 L2 级别的…

K8S之Kubelet

在Kubernetes集群中&#xff0c;在每个Node&#xff08;又称为Minion&#xff09;上都会启动一个Kubelet服务进程。该进程用于处理Master下发到本节点的任务&#xff0c;管理Pod及Pod中的容器。每个Kubelet进程都会在API Server上注册节点自身的信息&#xff0c;定期向Master汇…

【精品PPT】智慧路灯大数据平台整体建设实施方案(免费下载)

1、知识星球下载&#xff1a; 如需下载完整PPTX可编辑源文件&#xff0c;请前往星球获取&#xff1a;https://t.zsxq.com/19QeHVt8y 2、免费领取步骤&#xff1a; 【1】关注公众号 方案驿站 【2】私信发送 【智慧路灯大数据平台】 【3】获取本方案PDF下载链接&#xff0c;直…

实战项目——智慧社区(三)之 门禁管理

1、人脸识别 实现思路 ①查询出所有的小区信息&#xff0c;下拉列表显示&#xff0c;用于后续判断人脸信息是否与所选小区匹配 ②人脸识别&#xff1a;调用腾讯人脸识别的API接口&#xff0c;首先判断传入图片是否为一张人脸&#xff1b;其次将这张人脸去服务器的人员库进行…

【简单讲解下WebView的使用与后退键处理】

&#x1f308;个人主页: 程序员不想敲代码啊 &#x1f3c6;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家 &#x1f44d;点赞⭐评论⭐收藏 &#x1f91d;希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出指正&#xff0c;让我们共…

PDF文件内容可以转成word版本吗?答案是肯定的 PDF转word的方法

一&#xff0c;PDF转Word的必要性 随着信息技术的飞速发展&#xff0c;文档的格式和转换成为了我们日常生活和工作中不可避免的一部分。其中&#xff0c;PDF转Word的需求尤为突出。PDF作为一种跨平台的文档格式&#xff0c;具有阅读效果好、不易被篡改等优点&#xff0c;但在编…

Ubuntu18.04系统定时任务教程

在Ubuntu 18.04系统中&#xff0c;您可以通过以下步骤来设置定时任务&#xff0c;每10分钟执行一次&#xff0c;从某一个网站获取txt文本内容并清空root/1.txt和root/2.txt文件后再保存新内容&#xff1a; 安装curl&#xff08;如果尚未安装&#xff09;: 由于您需要从URL获取…

Swing客户端对接WukongIM--参考androidsdk,改写swing版本的悟空IMsdk。

前言 目前需要考察一些iot设备用信息服务器&#xff0c;悟空IM似乎也满足需要&#xff0c;故此文将尝试搬运一下androidsdk到 swing身上。 过程 暂略[苦干中]

MATLAB算法实战应用案例精讲-【数模应用】K折交叉验证

目录 前言 几个高频面试题目 K到底该取多少?为什么大部分人都要取10? 算法原理

基于Springcloud可视化项目:智慧工地可视化大数据云平台源码

目录 技术架构 智慧工地系统在实际推行过程中遇到的问题 智慧工地接纳程度较低 基础设施条件有待完善 智慧工地整体生态尚未完善 智慧工地平台各功能模块 施工过程工信程息信管息理管模理块 人员管理模块 生产管理模块 技术管理模块 质量管理模块 安全管理模块 绿…

【病毒分析】DevicData勒索病毒分析

1.背景 1.1来源 近期&#xff0c;Solar团队收到某医疗单位的援助请求&#xff0c;该公司的计算机受到了某勒索病毒的侵害&#xff0c;所有的文件被加密并且添加了.DevicData-P-470b1abd后缀&#xff0c;我司人员现场取证进行排查并提取加密器,本文是对于加密器的分析。 2.恶…