![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 70 Pomógł: 0 Dołączył: 16.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
Nie wiem, czy umieściłem ten temat w dobrym dziale bo nie wiem, jakie technologie tu będzie najlepiej wykorzystać.
Chodzi mi o kolorowanie składni, ale przed kliknięciem przycisku "Wyślij". Po prostu w textarea. Jak najlepiej się za to zabrać? W zwykłym textarea nie ma raczej możliwości kolorowania tekstu więc to odpada. Dwie możliwości, jakie mi przyszły na razie na myśl to zrobienie "własnego textarea" np. w JavaScript, tylko że tutaj będzie potrzebne bardzo dużo pracy (będzie trzeba zaprogramowywać naciśnięcie każdego przyciskum, np. backspace) i wydaje mi się, że to trochę głupie rozwiązanie. Druga możliwość, która mi przyszła na myśl, to zrobienie tego jako aplet w Javie i wstawienie na stronę. Co o tym myślicie? -------------------- WIELKIE DZIĘKI ZA POMOC!
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Zobacz sobie na jakiej zasadzie działają okna edytorów WYSIWYG w JS. IMO na takiej zasadzie powinieneś to właśnie zrobić. Do tego mechanizm kolorowania składni - również w JS by działało to płynnie.
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 2 291 Pomógł: 156 Dołączył: 23.09.2007 Skąd: ITALY-MILAN Ostrzeżenie: (10%) ![]() ![]() |
Lub zrobic Div'a pod Textarea gdzie ktos pisal by kod do tego napisac funkcje JS ktora bedzie na bierzaco przesylala kod z tego Textarea to div'a w ktorym potem wszystko przeparsujesz i wyswietlisz cos jak podglad postu z gotowym bbcode.
-------------------- Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/ Moj blog |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 70 Pomógł: 0 Dołączył: 16.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
Sorry, że odpowiadam tak późno...
Cytat Zobacz sobie na jakiej zasadzie działają okna edytorów WYSIWYG w JS. IMO na takiej zasadzie powinieneś to właśnie zrobić. Do tego mechanizm kolorowania składni - również w JS by działało to płynnie. Poszukałem takich edytorów, ale trochę trudno jest przestudiować ich działanie ![]() Cytat Lub zrobic Div'a pod Textarea gdzie ktos pisal by kod do tego napisac funkcje JS ktora bedzie na bierzaco przesylala kod z tego Textarea to div'a w ktorym potem wszystko przeparsujesz i wyswietlisz cos jak podglad postu z gotowym bbcode. Nie wiem, czy dobrze zrozumiałem Twój pomysł, ale jeżeli tak, to chodzi mi o co innego - chciałbym, żeby kolorowanie składni nastąpiło natychmiast, a nie po naciśnięciu przycisku Podgląd. Jedyny pomysł, jaki przychodzi mi do głowy, to po prostu zdarzenie onKeyPress i odpowiednio reagować na na przykład naciśnięcie przycisku A. W jaki sposób działa wstawienie emotikonek na tym forum (chodzi o to, że jak kliknąłem na emotikonkę, to pojawiła ona się natychmiast w miejscu, gdzie piszę, jako obrazek, a nie na przykład znak dwukropka i zakończenia nawiasu)? -------------------- WIELKIE DZIĘKI ZA POMOC!
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
marciowi chodziło o to by po wpisaniu czegokolwiek w textarea pod spodem dynamicznie wyświetlało się to jako zwykły tekst.
Co do zasady działania WYSIWYG: http://www.google.pl/search?hl=pl&q=js...+Google&lr= przeszukaj (ew. pod podobnymi frazami) |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 70 Pomógł: 0 Dołączył: 16.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
Poszukałem trochę i jest wiele artykułów na temat jak napisać swój edytor WYSWIG, ale ja znalazłem chyba prostszy sposób. Znalazłem, że jeżeli wpiszemy w pasku adresu przeglądarki poniższy kod, to można edytować stronę.
Kod javascript:document.body.contentEditable = 'true'; document.designMode='on'; void 0 Poszukałem więc info na temat contentEditable i stwierdziłem, że najprościej będzie w taki sposób: 1. Tworzymy diva o nazwie "RichEdit". 2. W body onload dajemy funkcję w której ustawiamy contentEditable naszego diva na true, np. w ten sposób: Kod var zm = document.getElementById("RichEdit"); zm.contentEditable = "true"; 3. Naszemu divovi ustawiamy onKeyPress na funkcję kolorującą tekst znajdujący się w divie. -------------------- WIELKIE DZIĘKI ZA POMOC!
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Cytat Do tego mechanizm kolorowania składni - również w JS by działało to płynnie. O ile pamiętam, to taka biblioteka nazywała się Chili (w jQuery). -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 70 Pomógł: 0 Dołączył: 16.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
Pojawił się mały problem. Kiedy koloruje tekst w divie, to go zmieniam, a kiedy go zmieniam to kursor ustawia się zawsze na początku, a koloruję tekst za każdym razem, kiedy zostanie dopisana jakaś litera. Czy ktoś wie jak w JavaScript ustawić kursor w jakimś miejscu albo jak inaczej rozwiązać ten problem?
-------------------- WIELKIE DZIĘKI ZA POMOC!
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 31.07.2025 - 10:44 |