neft
Version:
Universal Platform
31 lines (24 loc) • 833 B
text/coffeescript
module.exports = (impl) ->
loadResources: (resources) ->
self = @
length = 1
loaded = 0
onLoaded = ->
self.progress = ++loaded / length
return
load = ->
if document.readyState is 'complete'
for resource in resources
for _, resolutions of resource.paths
for resolution, path of resolutions
length++
img = document.createElement 'img'
img.onload = img.onerror = onLoaded
img.src = path
return
if document.readyState is 'complete'
load()
else
document.addEventListener 'readystatechange', load
onLoaded()