string
Burkhard
- javascript
0 Zapp
Hallo Ihr alle!
Mit folgender Funktion formatiere ich einen gewählten Teil eines Textes fett.
Die Sachen hat ein Hacken:
Wenn das Wort oder der Teilstring schon mal vorgekommen ist ,dann wird nicht das Gewählte fett formatiert, sondern das vorhergehende.
Woran das liegt, weiß ich!!
Aber wie kann ich das um gehen??? Bitte gebt mir doch einen Denkanstoß!!
Danke Gruß Burkhard
var fett ="";
function markierterText()
{
if (window.getSelection){
fett = window.getSelection();
alert(fett);
}
else if (document.getSelection){
fett = document.getSelection();
}
else if (document.selection){
fett = document.selection.createRange().text;
}
var stringfeld = document.neu.fBody.value;
var str = "<b>"+fett+"</b>";
var neu = stringfeld.replace(fett,str);
document.neu.fBody.value = neu;
document.neu.fBody.focus();
ansichtupdate();
}
Hallo Burkhard,
Wenn das Wort oder der Teilstring schon mal vorgekommen ist ,dann wird nicht das Gewählte fett formatiert, sondern das vorhergehende.
Im IE kannst du mit einer Textrange auf den markierten Bereich als Objekt zugreifen, z.B.:
markierung=document.selection.createRange();
markierung.execCommand('Bold');
In anderen Browsern bekommst du nur die Zeichenkette in der Markierung und keine Information über deren Position, so dass dein Problem afaik nicht lösbar ist.
Grüße, Stefan