Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JQUERY] Problem z nawigacja zdjec/slajdow
Volume
post
Post #1





Grupa: Zarejestrowani
Postów: 283
Pomógł: 11
Dołączył: 11.10.2004
Skąd: 3c

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


Witam napisalem sobie taki kod na przerzucanie zdjec i dziala niestabilnie.

Skrypt dziala tak, ze pobiera z id nr i nr ten wskazuje na zrodlo w atrybucie rel ktore jest wyswietalne jako duze.
Stworzylem nawigacje next i back ktora sie zapetla oraz przycisk close do zamkniecia powiekszonego zdjecia.

Problem dokladnie wyglada to tak, ze skrypt dziala w porzadku jesli przerzucam zdjecia do tylu lub do przodu ale w granicach ilosci zdjec od 1 do 4 a jesli cofne z pierwszego zdjecia lub dam do przodu z 4 to skrypt zaczyna wyrzucac zamist zrodla undefined.

Kolejny problem zaczyna sie wtedy gdy uzyje przycisku close - i ponownie wybiore zminiaturek zdjecie do powiekszenia - wtedy nawigacja next i back szwankuje... wywala czasami undefined.

Może ktoś zna lepszy sposob pobierania numeru z wybranego diva (w moim przypadku id="fotx"), np bez użycia atrybutu id?
Ja w tej chwili musze wyciagnac tresc z atrybutu id oraz wyciagnac usuwajac przednie "z" numer, nastepnie formatuje tresc na integer (parseInt) i dopiero moge stosować dzialania +/-.

Bardzo prosze zeby ktos pomogl mi ogarnac problem.

  1. <div id="fotx">
  2. <div id="back">back</div>
  3. <div id="next">next</div>
  4. <div id="close">close</div>
  5. <div id="zdjecia"></div>
  6. </div>
  7. <div id="fotki_big1">
  8. <img id="z1" rel="duze/a.jpg" src="male/a.jpg" alt="zdjecie 1" />
  9. <img id="z2" rel="duze/b.jpg" src="male/b.jpg" alt="zdjecie 2" />
  10. <img id="z3" rel="duze/c.jpg" src="male/c.jpg" alt="zdjecie 3" />
  11. <img id="z4" rel="duze/d.jpg" src="male/d.jpg" alt="zdjecie 4" />
  12. </div>
  13.  
  14. <script type="text/javascript">
  15. $('#fotki_big1 img').click(function ()
  16. {
  17. $('#fotx').css('height', 'auto');
  18. $('#fotx').css('opacity', '1');
  19. var zrodlo=$(this).attr('rel');
  20. var idx=$(this).attr('id');
  21. idx=parseInt(idx.substr(1,2));
  22. $('#zdjecia').html('<div id="zdjecie"><img rel="' + idx + '" src="' + zrodlo + '" alt="zdjecie" />wybrany(id:' + idx + ') (zrodlo:' + zrodlo +')</div>');
  23. //$('#fotx').append(i + '<br /><br />');
  24.  
  25. $('#back').click(function ()
  26. {
  27. var id_aktual=$('#zdjecie img').attr('rel');
  28. var zrodlId=parseInt(id_aktual)-1;
  29. var id_back=$('#z' + zrodlId).attr('rel');
  30. if(idx==1) idx=4;
  31. else idx=parseInt(idx)-1;
  32. $('#zdjecia').html('<div id="zdjecie"><img rel="' + idx + '" src="' + id_back + '" alt="zdjecie" />cofany(id:' + idx + ') (zrodlo:' + id_back +')</div>');
  33. }).css('cursor', 'pointer');
  34.  
  35. $('#next').click(function ()
  36. {
  37. var id_aktual2=$('#zdjecie img').attr('rel');
  38. var zrodlId2=parseInt(id_aktual2)+1;
  39. var id_next=$('#z' + zrodlId2).attr('rel');
  40. if(idx==4) idx=1;
  41. else idx=parseInt(idx)+1;
  42. $('#zdjecia').html('<div id="zdjecie"><img rel="' + idx + '" src="' + id_next + '" alt="zdjecie" />wyprzedzany(id:' + idx + ') (zrodlo:' + id_next +')</div>');
  43. }).css('cursor', 'pointer');
  44.  
  45.  
  46. $('#close').click(function ()
  47. {
  48. $('#fotx').css('height', '0');
  49. $('#fotx').css('opacity', '0');
  50. $('#zdjecia').html('');
  51. }).css('cursor', 'pointer');
  52.  
  53. }).css('cursor', 'pointer');
  54.  
  55. </script>


Go to the top of the page
+Quote Post

Posty w temacie


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 Aktualny czas: 19.08.2025 - 04:09