Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [jQuery]Dodawanie własnych tagów do textarea, w stylu [b][/b] dla pogrubienia tekstu
bolverk
post 24.03.2010, 00:46:37
Post #1





Grupa: Zarejestrowani
Postów: 57
Pomógł: 6
Dołączył: 10.08.2009
Skąd: Nowe Miasto Lubawskie

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


Mam pewien problem z działaniem skryptu Javascript napisanym w jQuery. Chcę za pomocą przycisku dodać własne znaczniki by potem poddać je parsowaniu w PHP. Ale jest problem z działaniem tego kodu:

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <meta http-equiv="content-type" content="text/html; charset=iso-8859-2" />
  5. <title>Cosik</title>
  6. <script src="jquery.js" type="text/javascript"></script>
  7. <script src="caret-range.js" type="text/javascript"></script>
  8. <script type="text/javascript">
  9. $(document).ready(function(){
  10. $('#add_bold').bind('click', function(){
  11. var input = $("textarea#dddd");
  12. var range = input.caret();
  13. var tekst =//przykładowo "(b)(/b)";
  14. // Insert text at caret then restore caret
  15. var value = input.val();
  16.  
  17. input.val(value.substr(0, range.start) + tekst + value.substr(range.end, value.length));
  18. input.caret(range.start + tekst.length);
  19. return false;
  20. });
  21. });
  22. </head>
  23. <form action="index.html" method="post">
  24. <input type="button" id="add_bold" value="Pogrubienie"/>
  25. <textarea id="dddd"></textarea>
  26. <input type="submit" value="Dodaj"/>
  27. </form>
  28. </body>
  29. </html>


Korzystam z pluginu JQuery o nazwie caret-range, którego kod można znaleźć tu caret_range

Ogólnie skrypt działa poprawnie w Firefox (dodaje tagi niezależnie od pozycji kursora tekstu), ale już IE6 kod nie wykonuje się poprawnie, ponieważ dodaje mi tagi pogrubienia tylko na początku tekstu niezależnie od pozycji w jakiej ustawię kursor tekstu za pomocą myszki. Kod dla $('#add_bold').bind('click', function() jest skopiowany ze strony pluginu i zastosowany dla własnych potrzeb.

Niby jQuery działa tak samo niezależnie od rodzaju przeglądarki ale to nie działa. Próbowałem już BBcode4.js ale nie odpowiada mi to. Poproszę o pomoc.

Ten post edytował bolverk 24.03.2010, 22:01:24


--------------------
Użytkownicy jak życie, wszystkim mogą cię zaskoczyć.
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: 6.06.2024 - 10:48