HTML5 Boilerplate页面特定的Javascript放置

Jef*_*eff 6 javascript html5boilerplate

题

如果您使用单个javascript文件来保存所有脚本,那么您在哪里放置仅适用于一个页面的脚本?

背景

这可能是意见问题或"最佳实践",但我对其他人的意见感兴趣:

我正在项目中使用html5 Boilerplate.他们建议您将所有javascript放在一个文件中script.js以提高速度和一致性.似乎合理.

但是,我有一些地理位置脚本只与单个页面相关,而不是其他页面.我是否应该违反惯例并将此脚本放在我依赖的javascript库调用下面的页面上?只需调用相关函数(位于script.js)文件中,在它们所依赖的库的链接下面?

谢谢!

swa*_*ins 5

html5样板文件中的优秀人员建议将所有javascript放在script.js中,以便浏览器只需加载那个文件(以及h5bp使用的其他文件)并允许缓存该文件.

我们的想法不是以"推荐"的方式陷入困境,而是考虑与您自己的应用程序相关的事情.

  • 这个地理位置文件只会在这一页上使用,对吧?它永远不会在其他任何地方使用.
  • script.js文件将用于多个页面.

那么,在script.js文件中放置一个只需要一个页面的"整个脚本"是没有意义的.您应该将文件设置为外部文件,并在需要的页面上单独调用它.这将使您免于使script.js文件膨胀,以获得该用户可能永远不会使用的功能.

但是,如果地理定位功能的"整个脚本"非常小,则将其包含在script.js中.如果它没有增加该文件的下载速度,那么将它包含在那里是有意义的.

所有这一切的要点是,我申请的最佳折衷是什么?

我们知道这些事情是真的:

  • 缓存的js文件很好
  • 要下载的文件越少越好
  • 要下载的较小文件是好的
  • 维护很重要

一旦您根据应用程序考虑这些事情,决策就会变得容易一些.请记住,以毫秒为单位进行权衡的决策不会对用户对页面速度的"感知"产生太大影响.