Javascript in Frontend Plugin einbinden

Hallo zusammen,

ich versuche Javascript (JQuery) in ein von mir erstelltes Frontent-Plugin einzubinden. Dies wird aber scheinbar nicht mitkompiliert. Habe dazu auch die Seite developers.shopware.com genutzt.

In der Bootstrap.php meines Plugins wird ein Event registriert und die entsprechende Funktion aufgerufen:

public function install()
{
  $this->subscribeEvent(
	'Theme_Compiler_Collect_Plugin_Javascript',
	'onCollectJavascriptFiles'
  );
}

public function onCollectJavascriptFiles(Enlight_Event_EventArgs $args)
{
  $jsFiles = array( __DIR__. '/Views/frontend/_public/src/js/dhltracking.js');
  return new Doctrine\Common\Collections\ArrayCollection($jsFiles);
}

 

In er Javascript Datei habe ich bisher lediglich folgenden Code:

alert("ausserhalb");
$(function () {
	alert("geladen");
    $('#spedition').change(function() {
    	if($('#spedition').val() == 'nein') {
    		$('.dhl--trackingnumbers').show();
    	}
    	else if($('#spedition').val() == 'ja') {
    		$('.dhl--trackingnumbers').hide();
    	}

    });
})(jQuery);

 

Kann jemand erkennen, warum das Javascript nicht geladen wird?

Über das Backend habe ich das Plugin erneut installiert als über Einstellungen -> Performance den Cache geleert. Auch den Browser Cache habe ich geleert.

 

Danke und Gruß

Peter

Edit: Hab Blödsinn geschrieben. Hast du vielleicht irgendwo JS-Fehler? Und noch mal schauen, ob das JS-File auch dort an der Position liegt.

 

Scheinbar muss nicht das Plugin neu installiert werden, sondern das Theme erneut kompiliert werden. Hätte ich nicht vermutet, aber das funktioniert in meinem Fall.

1 „Gefällt mir“

Du kannst ja dein Plugin erweitern und bei „install“ oder „update“ das automatisch zu machen.