Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: jQuery pobranie zaznaczonych elementów
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
Narkon
Witajcie serdecznie,

Mam problem, aktualnie piszę system dla polskiego odpowiednika strony: http://rapgenius.com/

Mój problem polega na tym że, na podanej poywżej stronie teksty piosenek a może dokładniej, zaznaczone części tekstu można wyjaśniać. Właśnie tutaj mam problem. Znalazłem gdzieś taki skrypt który po części spełnia swoje zadania ale nie do końca:



[JAVASCRIPT] pobierz, plaintext
  1. function getSelected() {
  2.  
  3. if(window.getSelection) { return window.getSelection(); }
  4.  
  5. else if(document.getSelection) { return document.getSelection(); }
  6.  
  7. else {
  8.  
  9. var selection = document.selection && document.selection.createRange();
  10.  
  11. if(selection.text) { return selection.text; }
  12.  
  13. return false;
  14.  
  15. }
  16.  
  17. return false;
  18.  
  19. }
  20.  
  21. $(document).ready(function() {
  22.  
  23. var url = '{term}', selectionImage;
  24.  
  25. $('#show-bubb-text').mouseup(function(e) {
  26. $('#con').text('{term}', selectionImage);
  27. var selection = getSelected();
  28.  
  29. if(selection && (selection = new String(selection).replace(/^\s+|\s+$/g,''))) {
  30.  
  31. if(!selectionImage) {
  32. selectionImage = $('<a>').attr({
  33.  
  34. href: url,
  35.  
  36. title: 'Kliknij aby dodać wyjaśnienie',
  37.  
  38. id: 'show-bubb'
  39.  
  40. }).html("<div class='explain'><div style='padding: 4px;'>Wyjaśnij</div></div>").hide();
  41.  
  42. $(document.body).append(selectionImage);
  43.  
  44. }
  45.  
  46.  
  47. selectionImage.attr('href',url.replace('{term}',encodeURI(selection))).css({
  48.  
  49. top: e.pageY - 30, //offsets
  50.  
  51. left: e.pageX - 13 //offsets
  52.  
  53. }).fadeIn();
  54.  
  55. }
  56.  
  57. });
  58.  
  59. $(document.body).mousedown(function() {
  60.  
  61. if(selectionImage) { selectionImage.fadeOut(); }
  62. });
  63.  
  64. $(document).mousedown(function(){zoomDiv.fadeOut();});
  65. });
[JAVASCRIPT] pobierz, plaintext



Problem polega na tym że owszem po zaznaczeniu tekstu wyświetla dymek (Wyjaśnij) pobiera tekst lecz tylko do Urla, a potrzebuję pobrać także ten tekst do inputa w oknie które będzie automatycznie się wyświetlać po kliknięciu dymka Wyjaśnij. Właśnie tu jest problem, próbowałem wielu rzeczy ale nic nie pomogło. Proszę o pomoc, ponieważ klient się piekli, mnie czas goni, a tylko tego nie potrafię zrobić. Macie jakieś pomysły?

Pozdrawiam!

Jest ktoś w stanie mi pomóc?
kamil4u
Opisz problem dokładniej i przygotuj proste demo i umieść np. tu: http://jsfiddle.net/
Narkon
http://jsfiddle.net/motyar/7NEk3/ - rodem z gotowca

(moje nie różni się niczym próc css'a)

Teraz po zaznaczeniu danego fragmentu tekstu pojawiają się opcje more i info wraz z linkiem w którym wartość linka to po prostu zaznaczony tekst.
Ja potrzebuję zrobić coś podobnego z tym że tą wartość która wpisywana jest do linku chcę aby wpisana była do formularza który pojawi się po kliknięciu more.
Za cholerę nie wiem w jaki sposób mam to zrobić, niestety jestem dobrym programistą php ale słaby jestem w javascripcie dlatego proszę Was, kolegów po fachu o pomoc...

Pozdrawiam!
kamil4u
Może Ci pomoże: http://jsfiddle.net/7NEk3/216/

Musisz znacznie lepiej zrozumieć działanie jQuery. Dodatkowo musisz mieć formularz, który uzupełnisz w odpowiedniej chwili i który odkryjesz wtedy kiedy potrzebujesz. Czeka Cię jeszcze dużo pracy.
Narkon
Dziękuję bardzo! Właśnie o to mi chodziło. Formularze i wyskakujące dymki etc to już nie problem. Jedyne co to właśnie z Tym miałe problem (mała znajomość jQuery)
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.