Hi!
Melde mich wieder mit einem Problem.
Javascript ist nicht meine Stärke und deswegen habe ich mir auch ein Tut dazu geholt. Das Problem liegt bei dem reinsetzen der BBCodes. Und zwar funktioniert es auch prima, wenn ich auf den Button klicke, aber wenn ich ihn in ein Grafik-Button ändere, dann gehts nicht mehr. Siehe hier.
Und hier der Code:
Code
<script type="text/javascript">
<!--
function insert(aTag, eTag) {
var input = document.forms['formular'].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);
}
}
//-->
</script>
Alles anzeigen
Code
<form name="formular" action="">
<textarea name="text" cols="30" rows="10"></textarea></p>
<input type="button" value="Einfügen" onClick="insert('[link]', '[/link]')">
<input type="image" value="Einfügen" onClick="insert('[b]', '[/b]')"></p>
</form>
Alles anzeigen
Könnt ihr euch vlt. denken woran das liegt?
Bin für jede Antwort dankbar.