首页 > 解决方案 > 这会对我网站的加载时间产生负面影响吗?

问题描述

我正在从像这样的单独的 HTML 文件中加载我的网站的部分内容(页眉、页脚和导航)

    $(function () {
        $("#navbar").load("nav.html");
        $("#header").load("header.html");
        $("#footer").load("footer.html");
    });

我这样做是为了让编辑整个网站的某些元素更容易,一旦我开发了更多页面,完成的项目将有大约 20-30 页。

问题不在于它们的实际加载,它们按预期正确显示。


我的问题

将这些元素中的每一个保留在每个 HTML 文件中,然后如果我需要编辑返回每个 HTML 文件,是否更好地提高成品的性能?

标签: jqueryperformance

解决方案


我不认为这会对性能产生任何重大影响。

然而,设计的影响是巨大的。干燥——不要重复自己。这很烦人且容易出错。

用一些性能换取更好的可读性和可维护性是很常见的,因为这通常是正确的选择。

不要说空话,这里是令人惊叹的 Jon Skeet 的摘录(C# In Depth,第四版,p399)

作为一般原则,在您以有意义且可重复的方式衡量性能并为其设定目标之前,我不会开始对您的代码进行任何更改以提高性能。如果您不小心,您可以以优化的名义使您的代码复杂化,结果发现即使您大大提高了一两个方法的性能,这些方法仍然不在应用程序的关键路径上

如果你决定做一些基准测试,你不妨考虑一种非 js 的方式。

<object data="includes/header.html" type="text/html"> </object>

如果存在性能差异,我希望纯 html 方法更快。


推荐阅读