• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Smiley-Script

Hauner

New member
Liebe Leser dieses Threads,

ich habe eine kleine Shoutbox auf meiner Homepage per Iframe eingebunden. Das funktioniert auch ganz gut. Da diese Shotubox auch Smilies unterstützt, möchte ich, dass der User diese per Klick auf die Smilies einbinden kann und dann mit dem Klick der Smiley-Code eingebunden wird [z. B. für Lächeln :)]. Also wie hier im WinFuture-Board. Bloß irgendwie habe ich im Quelltext von der Neu-Beitrags-Erstell-Seite kein JavaScript gefunden?! Wie sieht denn der Code so in etwa aus? Sagen wir mal das Iframe heißt 'shoutbox' und der darin enthaltene Input (für die Nachricht) heißt 'message'.
Beispiel: www.ms-location.de.vu

Vielen Dank schon im Voraus!
Gruß Hauner
 
Vorschlag

Bin derzeit auf Arbeit, deshalb kann ich dir lediglich ein kleinen Ablauf geben:

onClick Funktion aufrufen,

in dieser Funktion dann die Cursorposition innerhalb des <input> ermitteln,
string ab dieser Position merken,
Text für Smiley einfügen,
gemerkten string wieder anfügen

Für Cursor usw. gibts auf SelfHTML ein Beispiel - die machen es aber glaube ich mit einer <textarea>
dürfte aber äquivalent sein.
 
Code:
<script type="text/javascript">
function smiley(x,D,F){D=document;F=D.getElementById([b]'txt'[/b]);D.selection?(F.focus(),D.selection.createRange().text=x):(F.selectionStart||F.selectionStart===0)?F.value=F.value.substring(0,F.selectionStart)+x+F.value.substring(F.selectionEnd,F.value.length):F.value+=x}
</script>
<form><div>
<textarea [b]id="txt"[/b] cols="30" rows="20">abcdefghijklmopqrstuvwxyz</textarea><br>
<img src="a.gif" width="16" height="16" [b]onclick="smiley(':)')"[/b]> <img src="b.gif" width="16" height="16" [b]onclick="smiley(';)')"[/b]>
</div></form>
Link
 
Zuletzt bearbeitet:
Und wo kommt dann der Iframe Name hin?
Ich weiss nicht, ob ich die Frage richtig verstanden hab, aber versuch mal damit
Code:
;F=[b]frames['dein_iframe'].[/b]D.getElementById('txt')
oder auch mit parent.frames['dein_iframe']
 
Zurück
Oben