S
SebiB90
Gast
ich hab ein bbcode geschrieben,der ist so wie hier.einmal drauf klicken tag öffnen 2.mal schließen,wenn man text makiert hat kommen ein tag davor einer dahinter und danach focusier ich die textarea.das focusieren funktioniert aber nur wenn ich kein text markiere. warum?
hier die funktion:
hier die funktion:
das ist zwar ein code mir fiehl aber kein anderer ein<script>
var b=0;
var i=0;
var u=0;
var url=0;
var img=0;
var quote=0;
var add;
var button;
function addbbcode(bbcode,obj) {
txtarea=".$txtarea.";
txtarea.focus();
noselect=true;
browser='';
if(document.selection.createRange().text.length>0) {
text = document.selection.createRange().text;
noselect=false;
browser='IE';
}else {
objValue = new String(txtarea.value);
selStart = '';
selStart = txtarea.selectionStart;
selEnd = txtarea.selectionEnd;
text = objValue.substring(selStart, selEnd);
vortext= objValue.substring(0,(selStart-1));
nachtext= objValue.substring((selEnd+1),(objValue.length-1));
if(selStart=='') {
noselect=false;
browser='other';
}
}
if(noselect) {
switch(bbcode) {
case 'b':
if(b==0) {
add='';
button='b*'
b++;
}else {
add='';
button='b'
b--;
}
break;
case 'i':
if(i==0) {
add='';
button='i*'
i++;
}else {
add='';
button='i'
i--;
}
break;
case 'u':
if(u==0) {
add='';
button='u*'
u++;
}else {
add='';
button='u'
u--;
}
break;
case 'url':
if(url==0) {
add=''; button='url*... }else { add='';
button='url'
url--;
}
break;
case 'img':
if(img==0) {
add=''; button='img*... }else { add='';
button='img'
img--;
}
break;
case 'quote':
if(quote==0) {
add='';';
button='quote*'
quote++;
}else {
add='
button='quote'
quote--;
}
break;
}
txtarea.value+=add;
obj.value=button;
}else {
if(browser=='IE') {
document.selection.createRange().text='[' + bbcode + ']' + text + '[/' + bbcode + ']';
}
if(browser=='other') {
txtarea.value= vortext + '[' + bbcode + ']' + text+ '[/' + bbcode + ']' + nachtext;
}
}
txtarea.focus();
noselect=true;
}
</script>