Textarea durch PopUp manipulieren

Ossi

Erfahrenes Mitglied
Ich habe eine Seite (editor.htm), auf der ein onClick-Event die Seite farbe.htm aufruft:
<a href="farbe.htm"><img src="images/color_fg.gif" width="18" height="18" border="0"></a>

Auf der Seite editor.htm ist eine Textarea:
<div style="height:300; width=100%; background-color:white;
font-face:Verdana, Arial, Geneva, Monaco, Sans-serif; padding:0; border:inset 0px; overflow=auto;"
id="divEditable" contenteditable></div>

Diese Textarea enthält Text, der durch den Befehl:
<a href="javascript:onClick=format('ForeColor', 'red');">Farbe
rot </a>, der sich auf der Seite farbe.htm befindet, verändert werden soll.

Der dazugehörige JavaScript ist:
<script>
function format(command, parameter)
{
divEditable.focus();
document.execCommand(command, true, parameter);
}
</script>

Das Problem ist, daß ich, egal wie ich das Fenster für farbe.htm gestalte (popup, chromeless oder alert), es sich keine Veränderung in der Textarea ergibt. Baue ich die Sache mit 2 Frames, wo bei ich die Datei editor.im im linken und die Datei farbe.htm im rechten Frame habe, dann klappt es, weil konkret adressieren kann.

Wer kann helfen ??
 
hi,
ich weiß nicht ob ich das jetzt ganz verstanden habe.
wenn das script dass die farbe in der Textarea ändern soll sich in der datei fabre.htm befindet, und die textarea in editor.htm ändern soll, must du die parameter per javascript übergeben, wenn du die datei editor.htm aufrufst.

wenn du nicht weißt wie das geht, such mla beo google "parameter übergabe" und "javascript", da findest du bestimmt was
 
Einmal davon abgesehen das ich nicht weiß was du genau meinst und ich in deinem ganzen Code auch keinen onclick event handler oder eine textarea sehe könnte es sein das du das opener Attribut suchst.
 
Und für folgendes Konstrukt sollte man dich erhängen. :)
PHP:
<a href="javascript:onClick=format('ForeColor', 'red');">Farbe rot</a>
*scnr*

Geist

P.S.:
TRT, den sucht er. :)
 
Probier mal
PHP:
window.opener.divEditable.focus();
anstatt nur
PHP:
divEditable.focus();
...allerdings ohne Gewähr

ciao
 
Zuletzt bearbeitet:
Jepp, das klappt so - gleiches noch für die Anweisung "document.execCommand(...);" und mehr ist bei der Kommunikation nicht.

Geist
 
Das funktioniert so nicht, da es nach dem Öffnen des Popups keine Textarea (und keine Seite editor.htm) mehr gibt, in der sich die Farbe ändern soll. Werde doch wieder zu der Variante mit 2 Frames zurückgehen, oder es fällt jemanden noch was dazu ein.
 
Hä? Wieso gibts da keine Textarea mehr? PopUp ist für mich, wenn ich etwas clicke und daraufhin erscheint ein neues (meist kleineres ;)) Fenster - das alte bleibt dabei erhalten (ebenso die Textarea darin)... Hast du vielleicht das Beispeil online? oder kannst du es als Anhang mitschicken?

ciao
 

Neue Beiträge

Zurück