1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Bei Slideshow mit Zufall erstes Bild immer dasselbe

Dieses Thema im Forum "Javascript & Ajax" wurde erstellt von fallstatt, 29. April 2012.

  1. fallstatt

    fallstatt Grünschnabel

    Hoi zämä

    Ich habe eine Slideshow mit jQuery und einem externen Script (s.u.). Das Problem ist nun, dass das erste Bild immer das gleiche ist, danach zufällig die weiteren Bilder eingeblendet werden.
    Frage: Was muss ich machen, dass auch das erste Bild "zufällig" ist?

    Merci für Tipps!

    tinu

    Code (Text):
    1. function slideSwitch() {
    2.    var $active = $('#slideshow DIV.active');
    3.  
    4.     if ( $active.length == 0 ) $active = $('#slideshow DIV:last');
    5.  
    6.     // use this to pull the divs in the order they appear in the markup
    7. //var $next =  $active.next().length ? $active.next()
    8. //: $('#slideshow DIV:first');
    9.  
    10.     // uncomment below to pull the divs randomly
    11. var $sibs  = $active.siblings();
    12. var rndNum = Math.floor(Math.random() * $sibs.length );
    13. var $next  = $( $sibs[ rndNum ] );
    14.  
    15.  
    16.  $active.addClass('last-active');
    17.  
    18.     $next.css({opacity: 0.0})
    19.         .addClass('active')
    20.         .animate({opacity: 1.0}, 1000, function() {
    21.             $active.removeClass('active last-active');
    22.         });
    23. }
    24.  
    25. $(function() {
    26.     setInterval( "slideSwitch()", 5000 );
    27. });
  2. SpiceLab

    SpiceLab ZENmechanic

    Ich hab hier lokal einen JS-Codeschnippsel aus vergangenen Tagen entdeckt, der ein Banner-Hintergrundbild zufällig lädt, und hierbei nicht stetig mit Bild Nr.1 beginnt:

    Code (Javascript):
    1.  
    2. if (document.getElementById) { window.onload = swap };
    3.  
    4. function swap() {
    5.     var numimages=3;
    6.     rndimg = new Array("bgImage_1.png", "bgImage_2.png", "bgImage_3.png");
    7.     x=(Math.floor(Math.random()*numimages));
    8.     randomimage=(rndimg[x]);
    9.     document.getElementById("banner").style.backgroundImage = "url("+ randomimage +")";
    10. }
    Vielleicht kannst du daraus deine Schlüße ziehen, woran es bei deinem Script hängt.
    Zuletzt bearbeitet: 29. April 2012
  3. fallstatt

    fallstatt Grünschnabel

    Hoi spicelab

    Merci für den Hinweis - aber nö, ich kann da keine Schlüsse daraus ziehen. Ich habe eben div. Änderungen ausprobiert, es wird immer jeweils das erste Bild aufgerufen.

    PS: Es wird etwas mit dem <div class="active"> zu tun haben, ich finde es aber (fluchfluch :) nicht heraus ...

    Code (Text):
    1.  
    2. <div id="slideshow">
    3. <div class="active">
    4. img src="http://www.tutorials.de/images/image1.jpg" alt="Slideshow Image 1" />
    5. </div>
    6. <div>
    7. <img src="http://www.tutorials.de/images/image2.jpg" alt="Slideshow Image 2" />
    8. </div>
    9.  <div>
    10. <img src="http://www.tutorials.de/images/image3.jpg" alt="Slideshow Image 3" />
    11. </div>
    12. </div>
    13.  
    tinu
    Zuletzt bearbeitet: 29. April 2012

Diese Seite empfehlen