Smilies und Cursor in Textarea

Status
Nicht offen für weitere Antworten.

NTDY

Erfahrenes Mitglied
Problem: Ich habe in einem Chat so programmiert, dass der Cursor immer im Textareafeld zu sehen ist, damit man nicht immer mit der Mouse dahin drücken muß.
Das sah bei mir so aus: (\" ist als " zu verstehen, da ich in PHP arbeite ;-))

Code:
<body onload=\"document.getElementById('focus').focus()\" topmargin=\"0\" leftmargin=\"0\">
id=\"focus\">
<textarea id=\"idß" rows=\"rows\" cols=\"35\" type=\"text\" name=\"sended\" size=\"30\"></textarea>

Nun habe ich in diesem Tutorial gesehen, wie man mit einem Click ein Smiley in die Textarea einfügen kann. Das sieht so aus und funktioniert wunderbar:

Code:
<textarea id=\"eingabefeld\" rows=\"rows\" cols=\"35\" type=\"text\" value=\"Kommentar\" name=\"sended\" size=\"30\" onFocus=\"Javascript:if(document.shoutbox.input_comment.value=='Kommentar')document.shoutbox.input_comment.value='';\"></textarea>

<img src=\"../house_video.gif\" border=\"0\" onclick=\"document.getElementById('eingabefeld').value+=':TV:'\">

Leider mußte ich hier id=\"focus\" gegen id=\"eingabefeld\" ersetzen.

Frage: Wie kann ich aber bei Sachen kombinieren --> also --> das der Cursor trotzdem in der Texarea immer steht und zudem ich auf Smilieys klicken kann. ?

Andreas
 
Zuletzt bearbeitet von einem Moderator:
NTDY hat gesagt.:
(\" ist als " zu verstehen, da ich in PHP arbeite ;-))
Dann gewöhn dir an, HTML-Code nicht in echos zu schreiben!

Beispielcode:
Code:
<body onload="window.document.forms['FooForm'].elements['FooText'].focus();">
    <form name="FooForm">
         <textarea name="FooText" style="width:300px;height:150px;"
                   onfocus="if (this.value == 'Kommentar') { this.value = ''; }"></textarea>
         <br />
         <br />
         <img src="smiley.png" style="border-width:0px;" alt=":TV:"
              onclick="window.document.forms['FooForm'].elements['FooText'].value += ':TV:';" />
    </form>
</form>
  • Du breuchst nicht mit einer ID Arbeiten, mit document.forms geht es einfacher und ist kompatibler.
  • type- und size-Attribut haben im <textarea>-Tag nichts zu suchen.
Ps: Ich habe mir mal erlaubt, in deinen Beitrag [ code ] - Tags einzufügen, damit
es übersichtlicher wird und das Layout nicht verbreitert wird.
 
Smiley in anderen Frame übergeben.

Wie kann ich, wenn ich auf einer HTML Seite ein Textfeld habe und unterhalb habe ich in einem Iframe oder ganz einfach in einem anderen Frame die Smileys, die ich per Klick ins Textarea Feld übergeben möchte?

Andreas
 
Code:
<img src="smiley.png" style="border-width:0px;" alt=":TV:"
              onclick="window.parent.frames['FrameName'].document.forms['FooForm'].elements['FooText'].value += ':TV:';" />
Wobei FrameName der Name des Frames ist, in dem sich deine textarea befindet.
 
Danke Fabian für Deine Tipps. Ich habe die letzten Tage viel über JS gelernt. Zu Deinem letzten Tipp wollte ich noch was anfügen/umschildern.

Ich habe dieses Gerüst (s.u.) und finde jedoch keine Fkt., die aus einem Iframe, wo meine Smileys sind, per Klick an die übergeordnete Datei übergibt, wo mein Formular ist.

Code:
|-index.php-------------------|
|                             |
|                             |
|                             |
| Formular wo Smileys         |
| platziert werden sollen     |
|                             |
|                             |
|                             |
|                             |
||-Smiley.html---------------||
|| iFrame mit Smileybilder,d.||
|| per Click in Formular soll||
||---------------------------||
|-----------------------------|

Wie kann man sowas machen?

Vielen Dank schon einmal im vorraus.

Andreas
 
Code:
window.parent.document.forms['FooForm'].elements['FooText'].value += ':TV:';
 
Hallo!

Will auch, dass neben der Textarea Smilies erscheinen -> wenn ich draufklicke, soll der "code" im Textfeld stehen!

Wie geht das?

Wo bekomm ich ein Tutorial dazu her?

glg
 
Status
Nicht offen für weitere Antworten.

Neue Beiträge

Zurück