【问题标题】:If on a website, only one page uses a javascript file, should it be loaded on all pages? [duplicate]如果在网站上,只有一个页面使用 javascript 文件,是否应该在所有页面上加载它? [复制]
【发布时间】:2013-12-18 21:52:10
【问题描述】:

这个问题已经在我脑海中盘旋了很久。例如,如果只有索引页面使用轮播,那么将它包含在所有页面上是否有意义?对我来说没有,但大多数 WordPress 插件和主题 都没有考虑到这一点,它们会在所有页面上加载脚本。有什么我遗漏的吗?

此外,当我阅读 Grunt 的 缩小过程时,它会将网站上使用的所有脚本全部连接起来,然后将它们缩小,这实际上包括任何和所有 javascript,包括仅在一个上使用的那些页。那效率高吗? Grunt for People Who Think Things Like Grunt are Weird and Har。压缩是否弥补了所有使用的额外代码?

【问题讨论】:

    标签: javascript wordpress gruntjs grunt-contrib-concat


    【解决方案1】:

    如果您只需要一个地方的东西,只需将它包含在一个地方。大多数 WordPress 插件和主题根本不考虑性能。

    将所有 JavaScript 编译到一个文件中的理由是,它被下载一次并被缓存,然后就可以开始使用了。这对于整个站点中使用的通用代码非常有意义。这对于经常使用的东西很有用,甚至你知道的东西总是会被下载。例如,如果您知道您的主页在 90% 的情况下都是您的主要目标网页,并且额外请求的开销使其值得,请继续将其捆绑。

    【讨论】:

      【解决方案2】:

      只要您以正确的方式进行缓存(可能使用 ETags),这并不重要,必须执行新的 Web 请求来获取每个页面脚本可能是最糟糕的,因为如果您的主页包含所有脚本,那么用户访问的任何其他页面都不必获取新脚本。

      【讨论】:

        【解决方案3】:

        这并不重要,因为在第一个页面加载后,JS文件无论如何都会缓存在浏览器上。

        【讨论】:

        • 好吧,它还是要加载它并执行其中的代码。
        【解决方案4】:

        如果您可以合理地做到这一点,您应该只将脚本加载到需要它们的页面上,除非出于代码清洁的其他原因。 WordPress(或其他软件)的插件等不知道在哪里需要它们,因此它们必须随处可用。

        【讨论】:

          猜你喜欢
          • 2023-03-20
          • 1970-01-01
          • 2021-09-27
          • 1970-01-01
          • 2013-01-22
          • 1970-01-01
          • 2012-08-26
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多