Bei Slideshow mit Zufall erstes Bild immer dasselbe

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:
function slideSwitch() {
   var $active = $('#slideshow DIV.active');

    if ( $active.length == 0 ) $active = $('#slideshow DIV:last');

    // use this to pull the divs in the order they appear in the markup
//var $next =  $active.next().length ? $active.next()
//: $('#slideshow DIV:first');

    // uncomment below to pull the divs randomly
var $sibs  = $active.siblings();
var rndNum = Math.floor(Math.random() * $sibs.length );
var $next  = $( $sibs[ rndNum ] );


 $active.addClass('last-active');

    $next.css({opacity: 0.0})
        .addClass('active')
        .animate({opacity: 1.0}, 1000, function() {
            $active.removeClass('active last-active');
        });
}

$(function() {
    setInterval( "slideSwitch()", 5000 );
});
 
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:

Javascript:
if (document.getElementById) { window.onload = swap };

function swap() {
    var numimages=3;
    rndimg = new Array("bgImage_1.png", "bgImage_2.png", "bgImage_3.png");
    x=(Math.floor(Math.random()*numimages));
    randomimage=(rndimg[x]);
    document.getElementById("banner").style.backgroundImage = "url("+ randomimage +")";
}

Vielleicht kannst du daraus deine Schlüße ziehen, woran es bei deinem Script hängt.
 
Zuletzt bearbeitet:
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:
<div id="slideshow">
<div class="active">
img src="http://www.tutorials.de/images/image1.jpg" alt="Slideshow Image 1" />
</div>
<div>
<img src="http://www.tutorials.de/images/image2.jpg" alt="Slideshow Image 2" />
</div>
 <div>
<img src="http://www.tutorials.de/images/image3.jpg" alt="Slideshow Image 3" />
</div>
</div>

tinu
 
Zuletzt bearbeitet:
Zurück