我有一个基于网络的应用程序,需要大量资源(音频/图像/视频)。以前我一直在同一台服务器上托管所有内容,并使用PreloadJS获取所有资源并下载它们(同时显示一个不错的进度条)。
我现在转移到内容交付网络(CDN)来托管所有这些资产,但需要将基本Web应用程序保留在我的服务器上。
所以我在webapp.com
上有我的应用以及cdn.webapp.com
上的所有资源 - 我的问题是如何从其他域加载所有这些资源并同时查看进度?是否存在处理此问题的库,或者我是否需要编写一些代码来订阅每个资产的onload()
功能,并且仅在下载所有内容时才继续?
(感谢跨域的ajax请求,我不能再使用PreloadJS下载所有内容了)
答案 0 :(得分:0)
最后(因为没有人来救我)我通过这样做实现了它:
图片/资源位于cdn.webapp.com
上,并且通常包含在页面的HTML中。然后Javascript将运行并设置这些图像所在的div没有高度。这仍然允许加载图像,但不会在页面上呈现它们。
然后我找到了一个JS库(https://github.com/desandro/imagesloaded)来注册这些图像的回调,以便在图像完全下载时通知我。