ONCLICK SCRIPT + fehler +
robert
- javascript
ok soweit fast ...
der fehler: wenn ich per click einfüge geht das (auch nacheinander) aber wenn ich einen text einfüge und dann einen "OnClick Smilie" einfüge überschreibt der die letzte Position - das soll er doch aber nicht ...
script
<script language="Javascript" type="text/javascript">
<!--
function x () {
return;
}
function storeCaret (textEl) {
if (textEl.createTextRange)
textEl.caretPos = document.selection.createRange().duplicate();
} // end fn
function insertAtCaret (textEl, text) {
if (textEl.createTextRange && textEl.caretPos) {
var caretPos = textEl.caretPos;
caretPos.text =
caretPos.text.charAt(caretPos.text.length - 1) == ' ' ?
text + ' ' : text;
} else {
textEl.value = textEl.value + text; // for non MSIE browsers just append it
}
return true;
}// fn
function DoSmilie(addSmilie) {
var revisedMessage;
var currentMessage = document.replier.comment.value;
revisedMessage = currentMessage+addSmilie;
document.replier.comment.value=revisedMessage;
document.replier.comment.focus();
return;
}
//-->
</script>
der form tag
########
<form name="replier" method="post"> // das sollte ja nun so ok sein
das text feld
########
<textarea name="comment" rows="8" cols="40" wrap="virtual" onclick="storeCaret(this);"></textarea>
der smilie onClick
##########
<a href="javascript:void(0)" onclick="insertAtCaret(document.replier.comment,' :) '); document.replier.comment.focus();";><img src="smilies/smile.gif" border="0" alt="Lächeln" /></a>