Kein Javascript in HTML-Container?

Gesperrt
Nimrod
Beiträge: 28
Registriert: Do 26. Jun 2003, 07:15
Wohnort: Weimar
Kontaktdaten:

Kein Javascript in HTML-Container?

Beitrag von Nimrod »

Hi.
Ich habe ein Layout mit einem Menü- und einem HTML-Container erstellt. Im HTML-Container habe ich unter anderen anklickbare Bilder integriert, die per Javascript ein externes Window öffnen, welches eine vergrößerte Version des jeweiligen Bildes anzeigt. LEIDER geht das nicht.

Ist es definitiv so, das im Code des HTML-Containers kein Javascript funktioniert?

Regards
Steffen
timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo »

was ist ein HTML-Container?

aber unabhängig davon solltest du dir einfach mal ansehen, was im Frontend herauskommt...
Nimrod
Beiträge: 28
Registriert: Do 26. Jun 2003, 07:15
Wohnort: Weimar
Kontaktdaten:

Beitrag von Nimrod »

timo hat geschrieben:was ist ein HTML-Container?

aber unabhängig davon solltest du dir einfach mal ansehen, was im Frontend herauskommt...
NA ich meine den CMS-Container, den Platzhalter für CMS-Inhalte im Layout.

z.B.:
CMS_CONTAINER[1] - Navigation
CMS_CONTAINER[2] - Text

Die Seite (HTML+JS) funktioniert extern im IE und Netscape tadellos. Nur wenn ich den Code in den Container per CMS-HTML/Design-Editor kopiere.funktioniert der Javascript-Teil dort nicht.

Gruß
Steffen
HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB »

... und wenn man mal annimmt, dass ein "HTML-Container" die Verwendung von CMS_HTML[xy], d.h. einem HTML-Text, lautet die Antwort: eindeutig jein.

JavaScript im HTML-Text geht, jedoch muessen folgende Besonderheiten beachtet werden:

- Auf jeden Fall auf einer Testseite vorab testen. Geht etwas schief, kann der Artikel bzw. das Feld u.U. nicht mehr editiert werden (Link zu Online-Editor [SPAW] erscheint bzw. funktioniert nicht oder SPAW an sich funktioniert mit diesem Text nicht mehr). Dann hilft nur, den Artikel zu löschen.

- Keine JavaScript-Kommentare (<!-- bzw. //-->) verwenden (sonst treten genau diese Fehler auf).

- Keine JavaScript-Befehle verwenden, die HTML ausgeben. Jeder Aufruf im Online-Editor (SPAW) fuehrt dazu, dass die Zeilen ausgegeben und beim Speichern erneut gespeichert werden. D.h. der Code wird immer länger und länger (besonders schön, wenn Objekte erzeugt werden, die per ID referenziert werden: Nun gibt es sie mehrfach und der bisher wunderbare Code funktioniert nicht mehr).

- JavaScript kann nicht am Anfang des HTML-Codes stehen. Beim Speichern wird er gelöscht. Er bleibt erhalten, wenn das JavaScript in eine Tabellen-Zelle oder Z.B. in ein Formular eingebettet wird. Nicht ueber die entstehende Formatierung wundern...

- Beim Speichern gehen Anfuehrungszeichen (") i.A. verloren. D.h. dass bei der Verwendung von JavaScript-Funktionen u.U. die Parameter nach dem Speichern im Editor nicht mehr richtig uebergeben werden.

Tipp:
JS-Code in eine separate Datei auslagern, z.B. ueber Style -> Skripteditor (oder via Datei-Upload, das können dann auch Redakteure), aus der Seite auf die Datei referenzieren und Funktion im Link anwenden. Oder die refenzierte JS-Datei fest ins Layout integrieren.

JS-Referenz auf Datei (z.B. vor </HEAD>, hier via Style -> Skripteditor):

Code: Alles auswählen

<script language="JavaScript" SRC="js/irgendwas.js"></script>
Link:

Code: Alles auswählen

<a href="javascript:MachWas();">Hallo</a>
oder

Code: Alles auswählen

<a href="#" onClick="MachWas()">Hallo</a>
Die erste Variante kann man auch wunderbar mit dem Online-Editor verwenden, da man ggf. zunächst den internen Link auswählen und dann unten die notwendigen Angaben ergänzen kann (Link: front_content.php?... -> Ergänzen: JavaScript:(MachWas(' und ');" -> ergibt: Javascript:MachWas('front_content.php?...'); )

... und wenn ein HTML-Container was anderes ist: Keine Ahnung. :wink:

Gruß
HerrB

P.S.: Werde das wohl mal in der FAQ ergänzen, wenn es nicht sogar schon enthalten ist...muss ja auch mal ran...
Zuletzt geändert von HerrB am Di 5. Okt 2004, 21:34, insgesamt 1-mal geändert.
Nimrod
Beiträge: 28
Registriert: Do 26. Jun 2003, 07:15
Wohnort: Weimar
Kontaktdaten:

Beitrag von Nimrod »

Vielen Dank HerrB, hat mir sehr weitergeholfen!

Gruß
Steffen
Gesperrt