• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

[Wordpress] JavaScript um Kalender ein- und auszublenden funktioniert nicht

apple_juice

Aargauer Weinapfel
Registriert
16.10.10
Beiträge
746
Hallo zusammen!

Mein Problem ist folgendes:
Ich habe beim Suchen im Internet diese Seite hier gefunden: Klick
Das sah für mich ganz interessant aus, ich möchte auf meiner Homepage jetzt folgendes hinbekommen:
Man soll einen Link sehen, den man anklicken kann. Wenn man ihn anklickt, soll der Kalender der Seite erscheinen (ein Google-Kalender), wenn man den Link noch einmal anklickt, soll er wieder verschwinden (also wie in dem Beispiel auf der Seite zum ein- und ausblenden).


Ich habe exakt den folgenden Code auf meiner Seite in den Editor für den Html-Code eingefügt:


Code:
<script type="text/javascript" language="JavaScript">
<!--


function toggleMe(a){
  var e=document.getElementById(a);
  if(!e)return true;
  if(e.style.display=="none"){
    e.style.display="block"
  } else {
    e.style.display="none"
  }
  return true;
}


//--> 
</script>


Bitte klicken Sie <a onclick="return toggleMe('01')" href="javascript:void(0)">hier</a>, um unseren Kalender zu betrachten.


<div style="display:none;" id="01"><center>
Hier steht der Code für den Kalender... 
</center></div>


<noscript><b>Um unseren Kalender betrachten zu können, aktivieren Sie bitte Java-Script in Ihrem Browser. 
Sollte Ihr Browser kein JavaScript unterstützen, finden Sie unseren Kalender auch <a href="Link zum Alternativkalender">hier</a>.</b></noscript>


Der Code funktioniert offline auf einer Testseite problemlos, da habe ich allerdings auch das Html-Grundgerüst eingebaut (also <head> und so weiter), das geht ja online im Wordpress-Editor nicht. Auch, wenn ich einfach ein ganz normales Html-Dokument erstelle und es auf den Server hochlade, funktioniert alles.


Wenn ich exakt den Code von oben aber in meine Seite einfüge, klappt nichts. :( Ich kann den zwar Link anklicken, er erscheint auch, aber nichts verändert sich, wie ich möchte.

Kann mir jemand helfen oder vielleicht mal bei sich auf der Wordpress Seite abchecken, ob es da funktioniert?

Viele Dank!
Gruß :)
 

wdominik

Weißer Winterglockenapfel
Registriert
15.01.10
Beiträge
880
Rufe Deine Seite mal mit Google Chrome auf, und wähle dann unter Darstellung / Entwickler / JavaScript-Console aus. Da sollte dann eigentlich eine Fehlermeldung stehen, nach dem Du auf den Link klickst. Vielleicht hilft das schon weiter, ansonsten kann ich zu JavaScript und Wordpress nicht viel sagen.

Ich würde höchstens mal versuchen, die Kommentare (<!-- und //-->) im Javascript-Code zu entfernen, da sie zum einen ohnehin sinnlos sind (seit Netscape Navigator 2 sollte kein Browser mehr Probleme mit dem script-Tag haben, auch solche die JavaScript nicht unterstützen wissen, dass sie den Inhalt des Tags nicht ausgeben sollen.) und zum anderen WordPress Kommentare möglicherweise wegoptimiert und so der JavaScript-Code nie ins Ausgabedokument übernommen wurde.
 
  • Like
Reaktionen: apple_juice

apple_juice

Aargauer Weinapfel
Registriert
16.10.10
Beiträge
746
Hallo wdominik, vielen Dank schon einmal für deine Antwort!
Das Entfernen der Kommentare hat leider nichts gebracht, allerdings habe ich das mit Google Chrome probiert, ich bekomme die folgende Fehlermeldung:
Uncaught ReferenceError: toggleMe is not defined (anonymous function) onclick

Das kann ich allerdings nicht so ganz nachvollziehen, denn die Funktion wird doch definiert, oder nicht?
Ich kenne mich nicht so gut mit JavaScript aus, vielleicht kann mir da ja noch jemand weiterhelfen? :)

Gruß :)
 

wdominik

Weißer Winterglockenapfel
Registriert
15.01.10
Beiträge
880
Also liegt das Problem jedenfalls darin, dass der Code, der die Funktion definiert, nicht aufgerufen wird. Wenn Du im Browser Dir den Quelltext anzeigen lässt, ist darin dann der Script-Block enthalten?
 

apple_juice

Aargauer Weinapfel
Registriert
16.10.10
Beiträge
746
Ja, ich habe es überprüft, der Script-Block ist da.

Ich habe auch gerade mal versucht, den Script-Block, also diesen hier

<script type="text/javascript" language="JavaScript">
function toggleMe(a){
var e=document.getElementById(a);
if(!e)return true;
if(e.style.display=="none"){
e.style.display="block"
} else {
e.style.display="none"
}
return true;
}

</script>

in die header.php des Themes zu schreiben, das hat aber auch nichts gebracht.
Man, das muss doch irgendwie funktionieren. :(