Extends jQuery with our custom multi-resource asynchronous script receiver.
It ensures that the onLoaded callback will only be executed when all scripts have been loaded. It also maintains a cache of already loaded URL’s to prevent multiple downloads. It also supports loading script that have their own loading mechanism, like Google Maps, by offering a way to take their callback and inject it into ourselves.
Resources are passed in the following style:
`[ “simple_javascript_file.js”, { url: ‘js_file_with_own_loader’, callbackSetter: function(callback) { // The callback parameter is the callback that ‘js_file_with_own_loader’ needs // to call when it completes. So you could do it like this for example: module.addListener( ‘onLoad’, callback ) ; // Or you can check the example below for how it works with Google Maps e.g. } } ]
This is a sample resource definition for loading Google Maps with our own custom script that extends the Google Map object: [ “my_google_maps_extension.js”, { url: "http://maps.google.com/maps?file=api&v=2&key=” + GMAP_KEY + “&async=2&callback=_gmapsOwnOnLoadCallback”, callbackSetter: function(callback) { self._gmapsOwnOnLoadCallback = callback } } ]`
[ “my_google_maps_extension.js”, { url: "http://maps.google.com/maps?file=api&v=2&key=” + GMAP_KEY + “&async=2&callback=_gmapsOwnOnLoadCallback”, callbackSetter: function(callback) { self._gmapsOwnOnLoadCallback = callback } } ]`