Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JS] Edytor tekstu, zmiana tekstu w miejscu kursora
Forum PHP.pl > Forum > Po stronie przeglądarki
robal94
Witam!

Napisałem posty edytor tekstu oparty na polu textarea i JS. Mam jednak taki problem. Po wciśnięciu przycisku, który ma np. pogrubić tekst, znaczniki {b]{/b] ustawiam na końcu tekstu- kopiuje tekst, dodaje znaczniki, podmieniam nowy test w miejsce starego. Jak zrobić, aby w miejsce przed kursorem(lub zaznaczeniem) pojawiało się {b], a po nim {/b]? Tzn, jak pobrać tekst sprzed zaznaczenia(lub kursora), tekst zaznaczony i resztę tekstu?

Bardzo proszę o pomoc.

Pozdrawiam,
~Robal94
skowron-line
http://www.java2s.com/Code/JavaScript/HTML...xtSelection.htm z tym że musisz wziąć pod uwagę IE smile.gif
robal94
a wszystkie wersje czy te starsze od IE 8?
skowron-line
Cytat(robal94 @ 5.02.2012, 18:28:21 ) *
a wszystkie wersje czy te starsze od IE 8?

Chyba wszystkie mają takie samo ale głowy sobie nie dam obciąć
http://stackoverflow.com/questions/2813612...lect-text-range tu jest kawałek kodu który działa w we wszystkich przeglądarkach.
Ale lepiej użyć jakiejś biblioteki.
robal94
Bardzo to pomogło, ale jak podzielić tekst na te 3 części? nie ma czegoś takiego jak document.beforeSelect. ?
skowron-line
Cytat(robal94 @ 5.02.2012, 18:34:28 ) *
Bardzo to pomogło, ale jak podzielić tekst na te 3 części? nie ma czegoś takiego jak document.beforeSelect. ?

create range zwraca Ci pozycję kursora, a przy zaznaczeniu zwraca początek i koniec.

Aby podzielić tekst użyj funkcji substring
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.