Hallo zusammen,
hat einer eine Idee, warum die Ladereihenfolge folgender Script immer gleich, aber falsch ist?
bindReady(function() { OnloadScriptLoader("/addons/fader/fader-20151204.js", "true", init_fader); });
bindReady(function() { OnloadScriptLoader("/slide.js", "true", init_BSS); });
bindReady(function() { OnloadScriptLoader("/addons/gmap/map-20160518-min.js", "true"); });
bindReady(function() { OnloadScriptLoader("/addons/lightbox/js/lightbox-20160109.js", "true"); });
bindReady(function() { OnloadScriptLoader("/addons/socialbutton/js/socialbutton-20151123.js", "true"); });
bindReady(function() { OnloadScriptLoader("/addons/cookieconsent/cookieconsent-20151128-min.js", "true"); });
bindReady(function() { OnloadScriptLoader("/addons/piwik/piwik.php", "true", init_piwik); });
Mir ist klar, dass asynchrones Nachladen nicht unbedingt die Reihenfolge sein muss, wie man sie vorgibt, aber das ist doch etwas sehr auffallend.
Die Reihenfolge ist eigentlich exakt so, wie die Aufrufe da stehen. Nur Piwik kommt komischerweise zuerst. Und das immer. Gibt es dafür eine plausible Erklärung, warum das größte und langsamste Script immer als erstes geladen wird, obwohl ich es eigentlich so spät wie möglich will?
Erklärung: bindReady prüft eigentlich nur, wann der DOM vorhanden ist, also im besten Fall, wann "DOMContentLoaded" gefeuert wurde. Ist das nicht vorhanden, dann eben wenn "readyState" da ist oder als letzter Fall, wenn "load" gegeben ist.
OnloadScriptLoader: Das hängt die Scripte dann ein, alle gleich und ruft, wenn nötig, die Callback-Funktion auf.
Wie gesagt, das geht alles. Nur dass Piwik immer als erstes geladen wird macht mich irgendwie kirre.