我拍摄了我使用的 jquery.js 文件和 jquery-ui 文件的快照,并将它们与我用于我的站点的所有其他 .js 文件一起转储到一个巨大的 .js 文件中。
当我在没有缩小/打包的情况下执行此操作时,文件停止工作,并且当我尝试将其加载到我的站点而不是通常的 .js 文件时,文件上出现“递归太深”错误。所有的错误都来自 jquery 和 jquery-ui。使用简单的编号方案,我确保 jquery.js/jquery-ui 文件是文件中第一个列出的并且顺序正确(与包含单个文件相同。)
两个问题: 1) JavaScript 的包含标签与将所有文件转储到一个大文件中的效果不一样吗?JavaScript 文件在它们自己的脚本标签或不同文件中是否有额外的隔离/绝缘?
2) 我的目标是通过一个巨大的 .js 文件来加快我的网站速度,其中包含我在我的网站中使用过的所有 JavaScript(在 JQuery 中很重)并缩小该文件。为什么这是误导?有什么更好的方法呢?
注意:Google 的 JQuery 文件的 CDN 版本对我不起作用,我使用的所有 JQuery 插件/主题都不适用于 Google 的版本(无论如何,谁说他们可以成功使用 Google 的 CDN 是在撒谎。)
更新:感谢答案中的好建议,所有这些都帮助我了解了有关在生产服务器上部署 JavaScript 文件的更多信息。我实际上一直在使用 JQuery UI 插件的最新 SVN 分支,并且 UI 插件中存在错误,导致它们无法与我的文件合并在一起。我得到了最新的 Theme Rolled 插件,这些插件已经在一个文件中缩小并且可以解决这个问题。