Witam!!!
Znalazłem w sieci rotator obrazków i dostosowałem go tak, że działa tak jak zakładałem początkowo, czyli obrazki płynnie się zmieniają.
Oto kod:

  1. <script type="text/javascript" src="jquery.js"></script>
  2. #slideshow {
  3. position:relative;
  4. float: left;
  5. width: 600px;
  6. height: 200px;
  7.  
  8. }
  9.  
  10. #slideshow IMG {
  11. position:absolute;
  12. top:0;
  13. left:0;
  14. z-index:8;
  15. opacity:0.0;
  16. }
  17.  
  18. #slideshow IMG.active {
  19. z-index:10;
  20. opacity:1.0;
  21. }
  22.  
  23. #slideshow IMG.last-active {
  24. z-index:9;
  25. }
  26.  
  27. <script type="text/javascript">
  28.  
  29. function slideSwitch() {
  30. var $active = $('#slideshow IMG.active');
  31.  
  32. if ( $active.length == 0 ) $active = $('#slideshow IMG:last');
  33.  
  34. var $next = $active.next().length ? $active.next()
  35. : $('#slideshow IMG:first');
  36. $active.animate ({ "top": "-=100px"}, 1000);
  37. $active.addClass('last-active');
  38. $next.css({opacity: 0.0})
  39. .addClass('active')
  40. .animate({opacity: 1.0}, 1000, function() {
  41. $active.removeClass('active last-active');
  42. });
  43. }
  44.  
  45. $(function() {
  46. setInterval( "slideSwitch()", 5000 );
  47. });
  48.  
  49.  
  50. </head>
  51.  
  52. <div id="slideshow">
  53. <img src="image4.jpg" alt="" class="active" />
  54. <img src="image3.jpg" alt="" />
  55. <img src="image2.jpg" alt="" />
  56. <img src="image1.jpg" alt="" />
  57. </div>
  58.  
  59. </body>
  60. </html>


Tylko teraz chciałbym go trochę zmodernizować, ale wszelkie próby kończą się niepowodzeniem.
Chodzi o to, że obrazki teraz mają 600x200px czyli są powiedzmy "panoramiczne" (docelowo może będą nawet 800x200px).
Chciałem zrobić tak, żeby obrazki miały powiedzmy 2x większą wysokość (np 600x400px) i po załadowaniu pierwszego obrazka "przesuwał się on do góry" i dopiero wtedy zrobił zmianę na kolejny obrazek, przy którym również początkowo w div'ie o rozmiarach 600x200px widoczna będzie tylko górna część i przesunie się on do góry i w momencie gdy dojdzie do dolnej krawędzi obrazka, płynnie przejdzie on w kolejny... itd.

Próbowałem z .slideUp, ale totalnie nic mi nie wychodzi...

Mam nadzieję, że coś poradzicie


Wszelkie próby z slideUp kończą się niepowodzeniem. Próbowałem również z .animate zrobić tak, że animuję top: -200px, ale albo nie działa wcale albo nie tak jak powinno sad.gif Nie mam już na to siły...