javascript - 是否有任何 jquery 插件可以在 HTML 页面中保留通用的页眉和页脚?

标签 javascript jquery html jquery-plugins

<分区>

是否有任何 jquery 插件可用于在 HTML 页面中保留通用的页眉和页脚?

就像我可以将 header.html 和 footer.html 添加到 index.html 中一样。

我知道我可以使用 php,但如果可能的话,我想在本地 PC 上不安装任何服务器。完成所有工作后,我将使用 php includes

header.html

<title>Template</title>
<meta name="description" content="">
<link rel="stylesheet" href="css/styles.css?v=1.0">
<script src="js/modernizr-2.0.6.min.js"></script>

index.html

{include header.html}

<body class="home">

{include footer.html}

Footer.html

<footer class="f1">
    <p>copyright &copy; year</p>
</footer><!-- .f1 -->

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script>
<script src="js/general.js"></script>
</body>
</html>

最佳答案

jQuery 本身有一些功能可以让您做到这一点。如果您可以在每个页面上选择页眉/页脚的容器,您可以插入任何您想要的通用内容,甚至替换现有内容。

jQuery 替换站点的公共(public)部分

你可以这样做:

jQuery(function(){
    jQuery('.header').html('SOME COMMON HEADER');
    jQuery('.footer').html('SOME COMMON FOOTER');
});

在此处查看实际效果:http://jsfiddle.net/6sCfm/

jQuery 将外部文件加载到容器中

或者,如果你坚持加载外部文件,你可以这样做(使用 .load() ):

jQuery(function(){
    jQuery('.header').load('header.html');
    jQuery('.footer').load('footer.html');
});

但要注意您作为参数提供的正确路径,并确保文件应该只有您需要的 HTML(没有 <head><body> 标签等 - 它会使 HTML 不正确)。

将部分页面加载到容器中

如果您有整个页面(使用 <head><header> 等),您可以只加载其中的一部分。最好为要加载的部分提供有意义的 ID(例如 headerfooter),并在路径中的空格后作为选择器提供它们:

jQuery(function(){
    jQuery('.header').load('header.html #header');
    jQuery('.footer').load('footer.html #footer');
});

这应该足够灵活:)

关于javascript - 是否有任何 jquery 插件可以在 HTML 页面中保留通用的页眉和页脚?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8592275/

相关文章:

javascript - 如何使用 jquery 对数据表进行数字排序

javascript - 从复杂的 JSON 对象打印每个 JSON 输入路径

javascript - HTML Jquery .toggle 不切换回来

javascript - jquery 收集列表项的值并放入数组中

javascript - 使用 Puppeteer/Playwright 滚动不适用于 SAPUI5 应用程序

javascript - 我的表单验证功能有什么问题?

javascript - 在 JS 中将参数作为事件参数传递给后面的代码

html - 将文本/元素定位在 HTML 文档的右侧

javascript - 使用 canvas、getImageData 和 Web Worker 一次对一个图 block 的图像进行采样

javascript - 如何从列表中删除多余的逗号