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