Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript]Pobranie aktualnie zaznaczonego tekstu
Forum PHP.pl > Forum > Przedszkole
Watt
Witam,

Wiem, że było dużo takich tematów, również duzo googlowałem, ale ciągle mam ten problem w internecie znajowałem tylko roziwązania dla IE - nie mogę odnaleźć rozwiązania dla wszytkich popularnych przeglądarek. Jak pobrać tekst, który jest aktualnie zaznaczony?

Pozdrawiam
skowron-line
Wnikliwa analiza pomoże Ci dotrzeć do interesującego Cie rozwiązania.
  1. <script type="text/javascript">
  2. function addText(elname, wrap1, wrap2)
  3. {
  4. if (document.selection)
  5. { // for IE
  6. var str = document.selection.createRange().text;
  7. document.forms['inputform'].elements[elname].focus();
  8. var sel = document.selection.createRange();
  9. sel.text = wrap1 + str + wrap2;
  10. return;
  11. }
  12. else if ((typeof document.forms['inputform'].elements[elname].selectionStart) != 'undefined')
  13. { // for Mozilla
  14. var txtarea = document.forms['inputform'].elements[elname];
  15. var selLength = txtarea.textLength;
  16. var selStart = txtarea.selectionStart;
  17. var selEnd = txtarea.selectionEnd;
  18. var oldScrollTop = txtarea.scrollTop;
  19. //if (selEnd == 1 || selEnd == 2)
  20. //selEnd = selLength;
  21. var s1 = (txtarea.value).substring(0,selStart);
  22. var s2 = (txtarea.value).substring(selStart, selEnd)
  23. var s3 = (txtarea.value).substring(selEnd, selLength);
  24. txtarea.value = s1 + wrap1 + s2 + wrap2 + s3;
  25. txtarea.selectionStart = s1.length;
  26. txtarea.selectionEnd = s1.length + s2.length + wrap1.length + wrap2.length;
  27. txtarea.scrollTop = oldScrollTop;
  28. txtarea.focus();
  29. return;
  30. }
  31. else
  32. {
  33. insertText(elname, wrap1 + wrap2);
  34. }
  35. }
  36. <form action="" method="post" id="inputform">
  37. <input type='button' value='B' onClick="addText('body', '<b>', '</b>');">
  38. <textarea name='body' cols='95' rows='10' class='textbox'></textarea>
  39. </form>
  40. </body>
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.