Hallöchen,
zum Thema habe ich heute schon ein kleines Snippet gefunden das ich mir schon an meine Bedürfnisse angepasst habe.
Im Grunde funktioniert es auch, was mir fehlt ist auch ein callback zusenden (false) wenn die Datei nicht geladen werden konnte.
Der Callback sofern die Datei geladen wurde funktioniert, zum testen nehme ich eine Datei auf meinem Server die nicht existiert (_.js), ich bekomme natürlich eine Error-Meldung im Browser (logisch) aber kann man da nicht trotzdem ein callback senden?
Wäre ganz nett wenn eine Klasse iwo was nachträglich laden möchte die Möglichkeit hat zusagen hups da lief was falsch, führe eine Alternative aus...
LG: Paykoman
zum Thema habe ich heute schon ein kleines Snippet gefunden das ich mir schon an meine Bedürfnisse angepasst habe.
Im Grunde funktioniert es auch, was mir fehlt ist auch ein callback zusenden (false) wenn die Datei nicht geladen werden konnte.
Code:
this.load = function(source, callback){ var type = ( source.indexOf('.js') > 0 ) ? 'script' : 'link' var newResource = document.createElement(type), prior = document.getElementsByTagName(type)[0]; if( type == 'link' ){ newResource.setAttribute('async', true); newResource.setAttribute('rel', 'stylesheet'); newResource.setAttribute('href', source); }else{ newResource.async = 1; newResource.src = source; } newResource.onload = newResource.onreadystatechange = function( _, isAbort ){ if(isAbort || !newResource.readyState || /loaded|complete/.test(newResource.readyState) ){ newResource.onload = newResource.onreadystatechange = null; newResource = undefined; if(!isAbort && callback){ callback(true/false); } // callback mit true / false } }; prior.parentNode.insertBefore(newResource, prior); }
Wäre ganz nett wenn eine Klasse iwo was nachträglich laden möchte die Möglichkeit hat zusagen hups da lief was falsch, führe eine Alternative aus...
LG: Paykoman
Kommentar