Zum Inhalt springen

Javascript im RTE

Erstellt am 9. März 2004 · 9 Antworten · letzte Antwort am 25. November 2007

Tags: Frage

XCylo7 ·

Hallo!

Ich habe folgendes Problem:
Immer, wenn ich im RTE einen Link setze, der eine javascript-Funktion aufrufen soll, setzt er mir nach dem Abspeichern automatisch ein "http://" vor den Javascript-Aufruf, also z.B. so:

Aus
<a href="javascript:window.open('beispiel.htm','Test')">...</a>

wird
<a href="http://javascript:window.open('beispiel.htm','Test')">...</a>

Das hat natürlich zur Folge, dass das Ganze nicht funktioniert. Ich habe irgendwie keine Chance, im RTE einen Javascript-Aufruf einzusetzen.

Weiß jemand, wie ich TYPO3 diese automatische Korrektur austreiben kann?

Vielen Dank schonmal
Gruß
XCylo7

berndy38 ·

Hallo XCylo7!

Ich hatte das Problem auch erst vpr kurzer Zeit. Im Forum fand ich auch die Lösung des Problems:😃

Du musst einfach hinter dem javascript-aufruf im <a>-Tag folgendes einfügen: rtekeep="1"

Gruß Bernd 😃

XCylo7 ·

Hey Danke! Klappt tatsächlich 😃

Dafür habe ich jetzt aber ein neues Problem:

Nachdem sich das Popup geöffnet hat, steht im ersten Fenster (von wo aus ich den Javascript-Aufruf gestartet habe) plötzlich nichts mehr, außer:

[object]

Wie kommt denn das nun? Habe ich da evtl. beim Javascript etwas verkehrt gemacht? Mein Code lautet so:

<a href="javascript:window.open('test.swf','Fenster','width=100')" rtekeep="1">klicken</a>

Gruß
XCylo7

berndy38 ·

Hallo!

Also bei mir öffnet sich das javascript-popup ohne Probleme und die alte Seite zeigt es auch ganz normal an!

Dieses Problem kenn ich leider nicht.

Vielleicht mal im Forum rum suchen oder googlen!

Gruß Bernd 😃

maxhb ·

Hi!

<a href="javascript:irgendeinevariable = window.open('test.swf','Fenster','width=100')" rtekeep="1">klicken</a>

CU
maxhb

Lola ·

Ich hatte das selbe Problem wie XCylo7.

Das Pop-Up ging auf und auf der Seite auf der der Link ist erscheint nur [object], alles andere verschwindet.

Meine Lösung dazu:
Das Popup über einen Funktionsaufruf realisieren !

<A href="javascript:popup()" rtekeep="1>link</a>

So funktionierts.

maxhb ·

Hi!

Lola schrieb

Meine Lösung dazu:
Das Popup über einen Funktionsaufruf realisieren !

Entscheidend ist, dass man auf jeden Fall keinen Rückgabewert erzeugt. Dies geschieht nämlich bei

window.open('test.swf','Fenster','width=100')

Da der Rückgabewert vom Typ Objekt ist erscheint dann die lästige Ausgabe von [object] auf der Seite.
Also entweder das Öffnen eines neuen Fensters per Funktion ohne Rückgabewert anstossen, oder den Rückgabewert der window.open Methode in einer Variablen speichern.

CU
maxhb

sissi ·

Hi,

ein "dickes" javascript so wie das hier:

<script language="javascript" type="text/javascript">hideTC();</script>

einzufuegen in den RTE ist unmoeglich oder? Denn das wandelt er mir um in

&lt-;script language=&quot;javascript&quot; type=&quot--;text/javascript&quot-;&gt-;hideTC();&lt-;/script&gt;

(nicht wundern ich musste "-" in die quotes einfuegen damit das sichbar bleibt sonst wandelt mir der editor hier alles um)

*aaaaaah* any ideas?

;-)

thx + gruesse
sissi

sissi ·

@flanders:

ja, schreib mal sowas wie lang="de" als zusaetzliches attribut in den javascript-tag rein. und es klappt! frag mich nicht wieso, irgendwie trickst man damit den RTE aus......

grüesse
sissi