我目前正在开发我的一个项目,并最近添加了 jQuery。我的网页有一个标准的 html 文件,还有一个包含我所有 JavaScript 脚本的 .js 外部文件。我现在使用的 jQuery 位于我的 html 页面的 head 标签之间,我想知道是否有任何方法可以将它与所有其他脚本一起包含在 .js 文件中......我试过了这样做,但它不起作用......可能只是因为我不知道该怎么做,所以如果有人能告诉我如何正确地做,我会很感激。
3 回答
JavaScript 文件不包括其他 JavaScript 文件。包含它需要的脚本是 HTML 文件的工作。因此,您只需首先包含 jQuery 脚本,然后是第二个:
<script type="text/javascript" src="http://somelinktojquery"></script>
<script type="text/javascript" src="yourscript.js"></script>
通过按此顺序包含它们,您可以在脚本中使用 jQuery 代码,因为当您的脚本被加载时,jQuery 已经被加载了。(如果您尝试以相反的顺序包含它们,那么脚本中的任何 jQuery 代码都会失败,因为当时解释器还不知道 jQuery。)
我现在使用的 jQuery 位于我的 html 页面的 head 标签之间,我想知道是否有任何方法可以将它与所有其他脚本一起包含在 .js 文件中
您应该在每次需要使用 jQuery 文件和 JS 文件时添加它们(并按此顺序)。去掉这里的代码以包含最新版本的 jQuery:jQuery CDN
您有几个选项,这将取决于项目的阶段以及项目的规模和复杂性。在其他 js 文件中包含 js 文件不是其中之一。
首先,你真的需要把 jquery 放在 head 部分吗?如果您在结束标记之前包含您的脚本</body>
,它将加快 DOM 的加载,给您的访问者以页面加载速度更快的印象。这是关于该主题的讨论:
Jquery 代码应该放在页眉还是页脚?
在开发阶段
如果 CDN 不可访问,您可以将来自 CDN 的 jQuery unminified 版本与后备一起包含(对于您想要在不需要 Internet 连接的情况下进行开发的情况):
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.js"></script>
<script>window.jQuery || document.write('<script src="path/to/your/jquery"><\/script>')</script>
由于在开发阶段性能通常并不重要,我鼓励您将脚本保存在单独的文件中(最好遵循模块设计模式)。<script src="path/to/your/script"></script>
只需使用标签按顺序包含它们。它将帮助您保持代码井井有条,并让您查看包含的内容、顺序等。
对于生产阶段
您会希望尽可能减少对同一服务器的请求数量和脚本的大小。您可以使用Minification将所有文件连接成一个压缩版本。您可以使用YUI Compressor、 jsmin或UglifyJS 进行简单的压缩。Closure Compiler和 AjaxMin提供了更高级的功能,例如代码优化。这是一个比较。
您仍然可以包含来自 CDN 的 jQuery,但这次缩小了:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script>window.jQuery || document.write('<script src="path/to/your/jquery.min"><\/script>')</script>
或者只是用你的其他脚本来缩小 jQuery。
额外的
如果您需要更精细的 javascript 依赖项加载机制,请查看 requirejs或browserify。