Hallo, ich möchte JavaScript-Code zu meinem Theme hinzufügen und habe das entsprechend des Theme Startup Guides gemacht: /\*\* @var array Defines the files which should be compiled by the javascript compressor \*/ protected $javascript = array( 'src/js/myplugin.js' );
In der Datei myplugin.js findet eine Initialisierung statt, die mit $(document).ready(function(){...});
getriggert wird. Problem ist nun, dass dieser Code innerhalb des Shopware-AJAX Fragments liegt und schon getriggert wird, bevor die Hauptseite komplett geladen ist. Ich habe testweise statt des document.ready mal einen 5 Sekunden timeout eingebaut - dann funktioniert alles Fällt jemandem eine bessere Möglichkeit ein, Code auszuführen, nachdem die komplette Seite geladen und alle AJAX-Calls ausgeführt wurden? Gruß, Alex
schau mal in die header.tpl im Template, da kannst du auch JS Files einbinden.
Das klappt nicht, da die Ajax-Requests ja noch nicht abgeschlossen sind. Gleiches gilt den den Footer. Habe das Problem jetzt mit folgendem Code gelöst: $(document).ajaxStop(function () { //... });
Works like a charm VG, Alex
1 „Gefällt mir“