wessei
Neues Mitglied
hallo brauch dringend eure hilfe und zwar hab ich mir jetzt ein array mit den ganzen smiley-codes zusammengestellt, die ich kenne. jetzt hab ich einen code von einem anderen forum bekommen den ich verwende um mit dem klick auf ein smile in die textarea einzufügen.
dieser code funktioniert im FF einwandfrei nur im IE und Opera spricht er nicht mal an und ich weis nicht was da falsch daran ist.
der code dazu ist:
smiley_einfügen.js
eingefügt in index zwischen <head>|</head>
und die smiley bilder sollten in die textarea eingefügt werden:
pn_weiter.php:
smiley.php:
kann mir jemand sagn was ich falsch gemacht hatte?
währ mir eine sehr große hilfe.
mfg. wessei
dieser code funktioniert im FF einwandfrei nur im IE und Opera spricht er nicht mal an und ich weis nicht was da falsch daran ist.
der code dazu ist:
smiley_einfügen.js
Code:
function insert_smiley(aTag, eTag) {
var input = document.forms['pn_senden'].elements['Text'];
input.focus();
/* für Internet Explorer */
if(typeof document.selection != 'undefined') {
/* Einfügen des Formatierungscodes */
var range = document.selection.createRange();
var insText = range.text;
range.text = aTag + insText + eTag;
/* Anpassen der Cursorposition */
range = document.selection.createRange();
if (insText.length == 0) {
range.move('character', -eTag.length);
} else {
range.moveStart('character', aTag.length + insText.length + eTag.length);
}
range.select();
}
/* für neuere auf Gecko basierende Browser */
else if(typeof input.selectionStart != 'undefined')
{
/* Einfügen des Formatierungscodes */
var start = input.selectionStart;
var end = input.selectionEnd;
var insText = input.value.substring(start, end);
input.value = input.value.substr(0, start) + aTag + insText + eTag + input.value.substr(end);
/* Anpassen der Cursorposition */
var pos;
if (insText.length == 0) {
pos = start + aTag.length;
} else {
pos = start + aTag.length + insText.length + eTag.length;
}
input.selectionStart = pos;
input.selectionEnd = pos;
}
/* für die übrigen Browser */
else
{
/* Abfrage der Einfügeposition */
var pos;
var re = new RegExp('^[0-9]{0,3}$');
while(!re.test(pos)) {
pos = prompt("Einfügen an Position (0.." + input.value.length + "):", "0");
}
if(pos > input.value.length) {
pos = input.value.length;
}
/* Einfügen des Formatierungscodes */
var insText = prompt("Bitte geben Sie den zu formatierenden Text ein:");
input.value = input.value.substr(0, pos) + aTag + insText + eTag + input.value.substr(pos);
}
}
eingefügt in index zwischen <head>|</head>
und die smiley bilder sollten in die textarea eingefügt werden:
pn_weiter.php:
PHP:
<form name="xxx" action"xxx" method="post" accept-charset="ISO-8859-1">
<div class="pn_senden_antwort">Nachricht:</div>
<div class="pn_senden_text_an"><textarea class="textarea" name="Text"></textarea></div>
<?php
include("smile.php");
?>
<div class="pn_senden_su"><input type="submit" class="submit" name="submit" value="senden"></div>
<div class="pn_senden_re"><input type="reset" class="reset" value="Zurücksetzen"></div>
</form>
smiley.php:
PHP:
<div class="smile">
<img src="images/smiley/smile.gif" title="smile" alt="smile" onClick="insert_smiley(' :) ', '')">
<img src="images/smiley/grin.gif" title="grin" alt="grin" onClick="insert_smiley(' :D ', '')">
<img src="images/smiley/wink.gif" title="wink" alt="wink" onClick="insert_smiley(' ;) ', '')">
<img src="images/smiley/neutral.gif" title="neutral" alt="neutral" onClick="insert_smiley(' :| ', '')">
<img src="images/smiley/sad.gif" title="sad" alt="sad" onClick="insert_smiley(' :( ', '')">
<img src="images/smiley/cry.gif" title="cry" alt="cry" onClick="insert_smiley(' ;( ', '')">
*******
</div>
kann mir jemand sagn was ich falsch gemacht hatte?
währ mir eine sehr große hilfe.
mfg. wessei