Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 预加载外部Java脚本、图像和css文件_Javascript_Jquery_Jquery Plugins_Preloader - Fatal编程技术网

Javascript 预加载外部Java脚本、图像和css文件

Javascript 预加载外部Java脚本、图像和css文件,javascript,jquery,jquery-plugins,preloader,Javascript,Jquery,Jquery Plugins,Preloader,我一直在开发一个web应用程序(尽管我尽了最大的努力),随着越来越多的脚本、图像和css文件被调用,这个应用程序一直在稳步地变得越来越大 作为一个web应用程序,我认为在用户登录之后和到达仪表板之前显示预加载屏幕是完全可以接受的。在这个页面上,我想调用所有要下载到浏览器的外部脚本、css文件和图像,以便从本地缓存中提取它们,而不是在应用程序运行期间按需下载 我知道有数以十亿计的图像预加载脚本,但我需要更进一步,页面上的所有内容(主要是外部脚本)都被调用以进行预加载 谢谢, 用于脚本加载的Tim。

我一直在开发一个web应用程序(尽管我尽了最大的努力),随着越来越多的脚本、图像和css文件被调用,这个应用程序一直在稳步地变得越来越大

作为一个web应用程序,我认为在用户登录之后和到达仪表板之前显示预加载屏幕是完全可以接受的。在这个页面上,我想调用所有要下载到浏览器的外部脚本、css文件和图像,以便从本地缓存中提取它们,而不是在应用程序运行期间按需下载

我知道有数以十亿计的图像预加载脚本,但我需要更进一步,页面上的所有内容(主要是外部脚本)都被调用以进行预加载

谢谢,
用于脚本加载的Tim。不确定是否需要css。另外,我也不确定您在哪个平台上,但是rails对于资产管理来说非常好。

虽然我没有看到任何问题,但我假设我们讨论的是加速网页加载

有一个预加载页面是没有意义的,因为脚本最终必须下载,所以为什么要麻烦将用户发送到预加载页面呢。您只会招致额外的重定向请求

您有3种减少加载时间的主要方法:

  • 减少HTTP请求
  • 减少下载大小
  • 将静态内容移近客户端
Combres(.NET)很棒,可以处理脚本和CSS的浓缩和缩小。我相信其他科技公司也有类似的情况。这限制了下载的文件数量(还提供了缩小挂钩)

还要确保您使用的是CSS精灵。这限制了下载的图像数量

就尺寸而言:

您没有提到您使用的技术堆栈,但请尝试查看一些脚本缩小库(YUI压缩程序等)

还要确保您正在使用GZip(通过IIS配置或通过负载平衡器或其他方式在硬件上)

还有几种javascript技术可用于执行脚本的JIT下载,并基本上优先考虑用户体验。有一些关于这些技巧的好书

在这些方法之后,您将开始寻找硬件解决方案,如CDN等。这些方法可确保您的内容靠近目标受众,以实现更快的下载

雅虎对此有一些很好的指导: 您可以:

  • 将页面分成两个iframe或DIV元素
  • 在页面加载时,只需显示具有“加载…”动画的iframe
  • 第二个iframes的源URL应该是空的。在页面加载时,设置为实际页面URL。应隐藏此iframe
  • 完成此iframe的加载后,隐藏“加载”iframe并显示此iframe

  • 我建议对样式表、图像和脚本使用cdn。通过这种方式,它将被缓存(虽然是由服务器缓存),但它与本地缓存一样好,因为它会更快地返回。对于基于文本的资产,您可能希望将所有js和css编译成单个文件,缩小它们,然后使用gzip压缩为它们提供服务。。。然后我会使用CDN的静态图像腐蚀建议。。。