Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [HTML]Podświetlanie cytowanego fragmentu
Blackhole
post 4.05.2010, 14:41:09
Post #1





Grupa: Zarejestrowani
Postów: 283
Pomógł: 1
Dołączył: 15.11.2004
Skąd: Mikołów

Ostrzeżenie: (0%)
-----


Cześć!

Mam swój autorski mechanizm komentarzy. Przymierzam się do jego udoskonalenia o pewien "wodotrysk". Jest już możliwość cytowania wypowiedzi innych poprzez wstawienie znaczników "quote". Udoskonalenie ma działać tak, że jak ktoś kliknie w cytowany fragment wypowiedzi, to uruchamiana jest kotwica do komentarza, gdzie ta cytowana wypowiedź się znajduje (to jest banał i już działa) oraz (i do tego mam pytania) cytowany fragment tekstu w pierwotnym komentarzu ma się podświetlić.
Zastanawiam się, jak to zrobić...

Pierwszy kłopot jest taki, że podświetlenie powinno być wykonane przez wstawienie SPAN wyświetlanego "inline" i nie wiem, czy da się tak, bo cytowany fragment może zawierać inny cytat, który zrealizowany jest na znacznikach DIV wyświetlanych "block". Czy mam podstawy w ogóle się o to martwić? (to podstawowe pytanie)

Kolejnym jest to, że jeden komentarz może być przecież cytowany kilka razy i to różne jego fragmenty, które mogą na siebie zachodzić. Nie da się więc zrobić tak, iż w momencie cytowania wywołać z Ajax'a zmianę komentarza ze źródłem cytatu i wstawić znaczniki SPAN, a po kliknięciu w kotwicę ustawić tylko danego znacznikowi jakąś nazwę klasy.
Dałoby się jednak określić granice cytowanego tekstu wstawiając jakiś własny bbcode przetwarzany w trakcie wyświetlania komentarza. To rozwiązanie możliwe do zrobienia pociągałoby jednak za sobą konieczność każdorazowego przetworzenia (odwołanie się do bazy po jego treść) komentarza (przy kliknięciu w kotwicę) i zamiany jednego z cytowanych z niego fragmentów oznaczonych przez bbcode (bo może ich być więcej) na znaczniki SPAN i wstawienie na stronę po takiej zmianie, by pokazać podświetlenie. Do tego właśnie się przymierzam.

Macie może jakieś sugestie?

Ten post edytował Blackhole 4.05.2010, 14:42:18


--------------------
Ściskam prawicę...
Jacek

http://doscniewoli.pl/ - wszyscy jesteśmy niewolnikami bankierów!
http://jezusimarlena.ovh.org/
YouTube - Egzorcyzmy Anneliese Michel
Go to the top of the page
+Quote Post
Kshyhoo
post 4.05.2010, 15:28:24
Post #2





Grupa: Opiekunowie
Postów: 3 855
Pomógł: 317
Dołączył: 4.01.2005
Skąd: że




Może tak, u mnie działa:
  1. function highlight_words($word, $subject) {
  2. if (is_array($word)) {
  3. $regex_chars = "*|#.+?(){}[]^$/";
  4. for ($j = 0; $j < count($word); $j++) {
  5. for ($i = 0; $i < strlen($regex_chars); $i++) {
  6. $char = substr($regex_chars, $i, 1);
  7. $word[$j] = str_replace($char, '\\'.$char, $word[$j]);
  8. }
  9. $subject = preg_replace("/(".$word[$j].")/is", "<span style='background-color: yellow; font-weight: bold; padding-left: 2px; padding-right: 2px'>\\1</span>", $subject);
  10. }
  11. }
  12. return $subject;
  13. }


--------------------
Go to the top of the page
+Quote Post
Blackhole
post 4.05.2010, 17:08:55
Post #3





Grupa: Zarejestrowani
Postów: 283
Pomógł: 1
Dołączył: 15.11.2004
Skąd: Mikołów

Ostrzeżenie: (0%)
-----


Po, co podałeś, jest o wiele prostsze od mojego przypadku. Tu masz podświetlanie pojedyńczysz słów, a ja potrzebuję dłuższych fraz, które mogą na siebie zachodzić.


--------------------
Ściskam prawicę...
Jacek

http://doscniewoli.pl/ - wszyscy jesteśmy niewolnikami bankierów!
http://jezusimarlena.ovh.org/
YouTube - Egzorcyzmy Anneliese Michel
Go to the top of the page
+Quote Post
Kshyhoo
post 4.05.2010, 18:36:18
Post #4





Grupa: Opiekunowie
Postów: 3 855
Pomógł: 317
Dołączył: 4.01.2005
Skąd: że




A dłuższych fraz nie można trzymać w zmiennej?


--------------------
Go to the top of the page
+Quote Post
Blackhole
post 6.05.2010, 18:54:17
Post #5





Grupa: Zarejestrowani
Postów: 283
Pomógł: 1
Dołączył: 15.11.2004
Skąd: Mikołów

Ostrzeżenie: (0%)
-----


Pewnie, że można, ale u mnie mogą się one na siebie nakładać.

Ma ktoś jeszcze jakieś rady/wskazówki?


--------------------
Ściskam prawicę...
Jacek

http://doscniewoli.pl/ - wszyscy jesteśmy niewolnikami bankierów!
http://jezusimarlena.ovh.org/
YouTube - Egzorcyzmy Anneliese Michel
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 15.07.2025 - 05:15