[{oxscript}] und jquery

Den heutigen Sonntag habe ich mir mal wieder effektiver vorgestellt. Folgendes Problem:

Ich füge [{oxscript}] am Enbde von base.tpl ein. Im Kopf habe ich den Block

{block name="base_js"}]
  [{oxscript include="js/libs/jquery.min.js" priority=1}]
  [{oxscript include="js/libs/jquery-ui.min.js" priority=2}]
[{/block}]

das ergibt am Ende des Quelltextes vor

<script type="text/javascript" src="http://localhost:8080/testsite/out/testtheme/src/js/libs/jquery.min.js"></script>
<script type="text/javascript" src="http://localhost:8080/testsite/out/testtheme/src/js/libs/jquery-ui.min.js"></script>

Soweit wie üblich und bekannt, aber als Ergebnis bekomme ich

[B]$ is not defined
[/B]

Kopiere ich den von [{oxscript}] am Ende erzeugten Code, vor meine kleines Testskript, funktioniert es und es kommt zu keinem “$ is not defined”.

Dann habe ich [{oxscript}] vor mein Skript gestellt und es wird noch kurioser, dann werden die Skript-Tags gar nicht mehr ausgegeben.

Ich weiß nicht mehr weiter, daher würde ich mich über jeden Tipp freuen.

Viele Grüße,
Volker

Der Fehler bedeutet ja nur, dass jquery z.Zt. nicht geladen wurde. Wie sieht denn das Script aus? Was sagt Firebug?

Sonst probiere mal absolute Pfade.

In Firebug sehe ich den gesamten jQuery-Code und wie gesagt, wenn ich den von [{oxscript}] erzeugten Code bzw. den Scriptverweis 1:1 direkt in das Template kopiere, funktioniert es.

http://localhost:8080/testsite/out/testtheme/src/js/libs/jquery.min.js gibt es auch…

Das Script nutzt

$(document).ready(function()
{

?

[QUOTE=rubbercut;75189]Der Fehler bedeutet ja nur, dass jquery z.Zt. nicht geladen wurde. Wie sieht denn das Script aus? Was sagt Firebug?

Sonst probiere mal absolute Pfade.[/QUOTE]
Oder dass jQuery 2 Mal geladen wird…

jQuery wird doch schon standardmäßig eingebunden (bei 4.5)

[QUOTE=avenger;75218]Oder dass jQuery 2 Mal geladen wird…

jQuery wird doch schon standardmäßig eingebunden (bei 4.5)[/QUOTE]

Was verstehst du unter “standardmäßig”? Wenn ich [{oxscript}] heraus nehme, ist auch keine <script> … mehr da, ebenso, wenn ich es an den Anfang der Seite packe. Und wenn ich den Quelltext der generierten Seite nach jquery durchsuche wird auch maximal nur ein jquery.min.js gefunden.

Er meinte damit, dass JQuery im Azure Template bereits standardmäßig verwendet wird. Hast Du mal nen Link zu Deiner Seite? Dann schau ich mir das gerne mal an.

[QUOTE=coarsy;75228]Er meinte damit, dass JQuery im Azure Template bereits standardmäßig verwendet wird. Hast Du mal nen Link zu Deiner Seite? Dann schau ich mir das gerne mal an.[/QUOTE]

Ich habe mein Theme komplett neu auf Basis von Azure selber aufgebaut, da ich YAML favorisiere. Es ist nicht von Azure vererbt.

Der Shop ist noch offline und sieht entsprechend aus, daher der Link per PM :wink:

ich habe oben einen Bereich zum Testen. ein Klick auf “Test” sollte eine Messagebox liefern, was nicht passiert.


<script type="text/javascript" charset="">
    $(document).ready ( function()
       $("#test").click(
        function(event)
        {
          alert('Test');
        }
      );
    );
</script>

<p align="" >BEREICH ZUM TESTEN</p>
<div class="Test">
    Lorem Ipsum
    <a id="test" href="#">TEST</a>
</div>

Und genau das liegt auch der Hase im Pfeffer:


$(document).ready(function()
{
$("#test").click( function(event)
        {
          alert("Test");
        });

});

So ists richtig!

$(document).ready(function() ist eine JQuery Funktion, diese funktioniert deswegen erst nach der Einbindung von JQuery. Also musst Du das darunter schreiben.

Es war ein Anfängerfehler, wie du schon in der PM geschrieben hast. Ich hatte mein [{oxscript}] zu weit nach hinten verschoben…

Wir können das Thema als erledigt betrachten. Vielen Dank noch einmal für deine Hilfe.

Gruß
Volker

Nicht umsonst steht oben meine Frage dazu :wink:

In PMs an [I]coarsy [/I]habe ich mich bereits als Trottel geoutet…

Ich habe den Firebug wohl falsch interpretiert…

Gruß
Volker

[QUOTE=Paubolix;75230]Ich habe mein Theme komplett neu auf Basis von Azure selber aufgebaut, da ich YAML favorisiere. Es ist nicht von Azure vererbt.[/QUOTE]
Viel Spaß bei künfigen Updates…

Sich so weit von dem Basis-Template zu lösen halte ich für eine sehr gefährliche Entscheidung.

[QUOTE=avenger;75251]Viel Spaß bei künfigen Updates…
Sich so weit von dem Basis-Template zu lösen halte ich für eine sehr gefährliche Entscheidung.[/QUOTE]

Das stimmt sicher, aber wie will ich das Ganze lernen, wenn ich das Ganze nicht mal von Grund auf anfasse. Die Releasefähigkeit kann ich aber nach und nach wieder einbauen. Und vor allem kann ich sehr viele IF’s entfernen von Features, die in dem betreffenden Projekt ganz sicher nie benötigt werden. Die Templates sind schon wild genug … Zudem ist es für mich mit YAML übersichtlicher und nachvollziehbarer.