在 jQuery 需要呈现时优化页面速度
Optimizing page speed when jQuery needed to render
我正在使用 Google PageSpeed 服务来缩短我网站的页面加载时间。该站点在 GAE/P 上,但我认为这并不重要。
我的页面依赖于一些资源:
- Bootstrap(css 和 js)
- jQuery (js)
- jQuery UI (js and css)
- 我自己的东西(js、css 和图像)
页面加载 (link) 的瀑布图如下。在此页面中,我使用 Javascript 呈现 jQuery UI 可排序。
需要内联的 PageSpeed 建议 css/js 似乎不切实际,因为 Bootstrap 和 jQuery。
我正在寻找有关如何获得最大收益以提高页面速度的建议。例如:
- 我是否应该将所有 js(Bootstrap、jQuery、jQuery UI、我的)合并到一个 js 文件中并自己提供?
- 我是否应该将所有 css(Bootstrap、jQuery UI、我的)组合成一个 css 并自己上菜?
- 我应该将图像组合成 css 精灵吗?
- 我应该考虑的其他事项?
我会很感激你的想法。
我认为这个答案将属于意见类别,但我会尝试为每个陈述做出尽可能合乎逻辑的论证。
Should I combine all js (Bootstrap, jQuery, jQuery UI, mine) into a single js file and serve it myself?
是的。单个资源意味着到服务器的往返次数更少,但是不要懒惰地使用该服务器,查看一些不同的选项,而不是仅仅从您的域提供它。
Should I combine all css (Bootstrap, jQuery UI, mine) into a single css and serve it myself?
是的,出于同样的原因。
Should I combine images into a css sprite?
也许,这可能很难维护,好处真的取决于您的应用程序。
Other things I should consider?
考虑使用像亚马逊 Cloud Front 这样的服务托管您的静态内容,这将使您的用户更快地访问这些静态内容,而无需付出太多努力(或成本)。您还可以考虑将您的页面组合成一个单页网络应用程序。这样您的用户只会下载并执行您的资源一次,而后续页面只会加载数据。这种方法带来了其他挑战,例如 searching/indexing 以及代码的复杂性。
我正在使用 Google PageSpeed 服务来缩短我网站的页面加载时间。该站点在 GAE/P 上,但我认为这并不重要。
我的页面依赖于一些资源:
- Bootstrap(css 和 js)
- jQuery (js)
- jQuery UI (js and css)
- 我自己的东西(js、css 和图像)
页面加载 (link) 的瀑布图如下。在此页面中,我使用 Javascript 呈现 jQuery UI 可排序。
需要内联的 PageSpeed 建议 css/js 似乎不切实际,因为 Bootstrap 和 jQuery。
我正在寻找有关如何获得最大收益以提高页面速度的建议。例如:
- 我是否应该将所有 js(Bootstrap、jQuery、jQuery UI、我的)合并到一个 js 文件中并自己提供?
- 我是否应该将所有 css(Bootstrap、jQuery UI、我的)组合成一个 css 并自己上菜?
- 我应该将图像组合成 css 精灵吗?
- 我应该考虑的其他事项?
我会很感激你的想法。
我认为这个答案将属于意见类别,但我会尝试为每个陈述做出尽可能合乎逻辑的论证。
Should I combine all js (Bootstrap, jQuery, jQuery UI, mine) into a single js file and serve it myself?
是的。单个资源意味着到服务器的往返次数更少,但是不要懒惰地使用该服务器,查看一些不同的选项,而不是仅仅从您的域提供它。
Should I combine all css (Bootstrap, jQuery UI, mine) into a single css and serve it myself?
是的,出于同样的原因。
Should I combine images into a css sprite?
也许,这可能很难维护,好处真的取决于您的应用程序。
Other things I should consider?
考虑使用像亚马逊 Cloud Front 这样的服务托管您的静态内容,这将使您的用户更快地访问这些静态内容,而无需付出太多努力(或成本)。您还可以考虑将您的页面组合成一个单页网络应用程序。这样您的用户只会下载并执行您的资源一次,而后续页面只会加载数据。这种方法带来了其他挑战,例如 searching/indexing 以及代码的复杂性。