Autor Zpráva
ZbySTr
Profil *
Zdravím, potřeboval bych poradit s jednou funkcí.
Tato funkce by měla zjistit pozici v htmlText, podle pozice v text;

Snažil jsem se to řešit tak, že počítám znaky uzavřené v <>(včetně jich) a plus k tomu pozice mimo, poté porovnám pozici mimo s hodnotou získané ze selection.getBeginIndex(aplikované na textfield.txt)
Výsledná hodnota indexu v htmltextu by byla součet znaků v <> + mimoněj.

_global.GetPos = function(str, pos) { // str .... data z text_txt.text; pos .... aktuální pozice kurzoru v text_txt.text
var intag:Number = 0;
var outtag:Number = 0;
var i:Number = 0;
while (pos>outtag) {
if (str.charAt(i) == '<') {
start = true;

} else if (str.substr(i, 4) == '&gt;') {
start = true;
i += 5;
} else if (str.charAt(i-1) == '>') {
intag++;
outtag--;
start = false;
} else if (str.substr(i-1, 4) == '&lt;') {
start = false;
outtag--;
i += 5;
}
if (start) {
intag++;
} else {
outtag++;
}
i++;
}
return intag+outtag -1;
};

toto funguje v případě, že si vložím do text_txt.text = "1234567890";
pokud ale cokoliv dopíšu ručně a pomo chci zjistit pozici, už to nefunguje .....
je možné, že tam je jenom maličkost, čumím do toho už strašně dlouho a .........

Díky moc
ZbySTr
ZbySTr
Profil *
jenom úprava:
...
...
} else if (str.charAt(i-1) == '>') {
outtag--;
start = false;
}

....
...
return intag+outtag ;
...

ale tím to nebylo :)
ZbySTr
Profil *
problém vyřešen >}
Toto téma je uzamčeno. Odpověď nelze zaslat.

0