Jump to content
xt:Commerce Community Forum

Bilderwechsel


flavor

Recommended Posts

Hallo,

ich habe eine Slideshow (Javascript) in mein Header eingebunden, die mir weiche Bildübergänge ermöglicht. Bilderwiedergabe funktioniert nach der Reinfolge auch wunderbar. Leider bekomme ich es nicht gebacken die zufällige Bilderwiedergabe zu erzwingen. Hat vieleicht einer eine Lösung parat?

window.addEventListener?window.addEventListener("load",so_init,false):window.attachEvent("onload",so_init);

var d=document, bilder = new Array(), zInterval = null, aktuell=0, pause=false; bilderAnzahl=5; bilderPfad="../media/images/"; geschwindigkeit=10000;

function so_init() {
if(!d.getElementById || !d.createElement)return;

// erstes Bild wird eingelesen
bild = d.getElementById("slideshow").getElementsByTagName("img");
bilder[0] = bild[0];
bilder[0].style.display = "block";
bilder[0].xOpacity = .99;

bilder[1] = new Image();
bilder[1].src = bilderPfad + "002.jpg";
bilder[1].xOpacity = 0;
d.getElementById("slideshow").appendChild(bilder[1]);

setTimeout(so_xfade,geschwindigkeit);
neuesBild();
}

function so_xfade() {
cOpacity = bilder[aktuell].xOpacity;
nIndex = bilder[aktuell+1]?aktuell+1:0;
nOpacity = bilder[nIndex].xOpacity;

cOpacity-=.05;
nOpacity+=.05;

bilder[nIndex].style.display = "block";
bilder[aktuell].xOpacity = cOpacity;
bilder[nIndex].xOpacity = nOpacity;

setOpacity(bilder[aktuell]);
setOpacity(bilder[nIndex]);

if(cOpacity<=0) {
bilder[aktuell].style.display = "none";
aktuell = nIndex;
setTimeout(so_xfade,geschwindigkeit);
neuesBild();
} else {
setTimeout(so_xfade,50);
}

function setOpacity(obj) {
if(obj.xOpacity>.99) {
obj.xOpacity = .99;
return;
}
obj.style.opacity = obj.xOpacity;
obj.style.MozOpacity = obj.xOpacity;
obj.style.filter = "alpha(opacity=" + (obj.xOpacity*100) + ")";
}
}

function neuesBild() {
// immer ein Bild vorausladen
if ( (aktuell < (bilderAnzahl-2)) && (bilder.length < bilderAnzahl) ) {
bilder[aktuell+2] = new Image();
bilder[aktuell+2].src = bilderPfad + "0" + ((aktuell+3)<10 ? "0" + (aktuell+3) : (aktuell+3)) + ".jpg"
bilder[aktuell+2].xOpacity = 0;
d.getElementById("slideshow").appendChild(bilder[aktuell+2]);
}
}[/PHP]

Liebe Grüße

Claudia

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
  • Create New...