JQuery创建HTML公用模块进行引用

HTML公用模块引用

开发环境可能会遇到多个Html存在一个模块是相同的,因此在修改过程中逐一修改比较麻烦,因此把这个公用模块另外写就一个html,使用JQuery导入模块。
具体步骤:

  1. 创建公共 HTML 文件(例如 header.html)
  2. 在主 HTML 文件中引入 jQuery
  3. 使用 jQuery 加载公共 HTML 文件

这个场景应该是很少遇到的,毕竟只用前端三件套(js,css,html)不用框架写的还是比较少的。

一、创建公共header文件

将页面中的header模块单独copy一份,创建header.html文件

html 复制代码
<header>
    <h1>网站标题</h1>
    <nav>
        <ul>
            <li><a href="#home">首页</a></li>
            <li><a href="#about">关于我们</a></li>
            <li><a href="#services">服务</a></li>
            <li><a href="#contact">联系我们</a></li>
        </ul>
    </nav>
</header>

此处不需要引入css之类的样式文件,在引用的主页面的head中引用css就好了,方便管理

二、导入header模块

在main.html中导入之前创建的header模块,此处一定要导入jquery,不然会报错哈。

html 复制代码
<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>我的网站</title>

    <!-- 确保 jQuery 在自定义脚本之前加载 -->
    <script defer src="/jquery.min.js"></script> #jquery导入路径
    <script>
        // 使用 jQuery 的 ready 方法,确保 jQuery 已加载
        $(document).ready(function() {
            $("#header").load("/header.html"); #header.html的导入路径
        });
    </script>
</head>
<body>

<div id="header"></div> #id是唯一的因此用id比较保险

<main>
    <h2>欢迎访问我的网站</h2>
    <p>这是一个示例页面。</p>
</main>
</body>
</html>

需要确保jquery和header模块都能够正确加载到浏览器,具体可以按F12查看Source

三、可能会遇到的问题

1. "Uncaught ReferenceError: $ is not defined"

说明jquery没有导入成功,或者没有加载就被引用,需要确保 <script>的导入顺序。

相关推荐
夏殇之殁18 小时前
包中创建自定义列表项。 . 使用自定义列表项进行数据绑定 . 将天气预报数据保存到本地内存表,通过LiveBindings进行显示。 ...
服务器·前端·javascript
The Chosen One98518 小时前
高进度算法模板速记(待完善)
java·前端·算法
陈随易18 小时前
MoonBit抓包模块pcap,查看电脑的每一次联网通信
前端·后端·程序员
新中地GIS开发老师19 小时前
WebGIS开发学生作品|低空航天管理与航线规划系统
前端·javascript·webgis·三维gis开发
用户0595401744619 小时前
大模型对话记忆持久化踩坑实录:用 Playwright 自动化测了 300 次,终于揪出会话丢失的真凶
前端·css
丙氨酸長鏈19 小时前
Web前端入门第 问:JavaScript 一个简单的 IndexedDB 数据库入门示例
前端·javascript·数据库
kyriewen20 小时前
面试官让我手写虚拟列表——AI生成的版本,快速滚动几下就白屏了
前端·javascript·面试
IT_陈寒20 小时前
Vite热更新失效?你可能漏了这个配置
前端·人工智能·后端
梅孔立21 小时前
两种免费的翻译API调用方式详解 - Edge官方API与个人缓存服务
前端·缓存·edge
Revolution6121 小时前
React 组件重新渲染时,到底重新执行了什么
前端·react.js·面试