Door
Martin Roelofs
op 13-09-2019 19:52
gewijzigd op 13-09-2019 20:15
2.244 views
Hallo allemaal,
Mijn naam is Martin en heb mij net geregistreerd op dit Forum.
Sinds kort ben ik de website van onze Virtual Airline aan het aanpassen, maar weet nog niets van PHP.
Ik heb al wel veel aangepast wat wel duidelijk was, maar heb veel moeten zoeken.
Hopelijk kan ik er hier meer van leren.
Een van de probleempjes waar ik nu even tegenaan loop is dat de slideshow op de website op random staat en pakt veel dezelfde foto's. Ik zou willen dat de foto's op volgorde worden getoond. Graag zou ik willen weten wat ik in onderstaand script zou moeten veranderen.
Alvast heel hartelijk dank.
Hier het stukje script:
$(document).ready(function() {
$("#mainContent").css("min-height", ($("#sidebar2").height() + 30) + "px");
$(".menu li:has(li.active)").addClass("active");
var top = nrimg * 156 + 3000;
$("#preload").css("top", "-"+top+"px");
for (i=0;i<nrimg;i++) {
var nr = i + 1;
var url = mainUrl + "dbr/slide" + nr + ".jpg";
var imghtml = "<img src='"+url+"' /><br />";
$("#preload").append(imghtml);
}
$("#headerbg2").fadeTo(0, 0);
SlideShow();
});
function SlideShow() {
var bgimg = $("#headerbg2").css("background-image");
var nr = prevnr;
while (nr == prevnr) {
nr = Math.floor(Math.random() * nrimg) + 1;
}
prevnr = nr;
var url = "url("+mainUrl+"dbr/slide"+nr+".jpg)";
$("#headerbg2").css("background-image", url);
$("#headerbg2").fadeTo(fadeinTimeout, 1, function() {
$("#headerbg1").css("background-image", $("#headerbg2").css("background-image"));
$("#headerbg2").css("background-image", "");
$("#headerbg2").fadeTo(0, 0);
});
setTimeout("SlideShow();", timeout);
}
</script>
Misschien is het handiger om de (alle) bestaande foto's in een random volgorde te zetten in plaats van elke volgende foto random te maken waarbij "random" niet meer is dan "verschilt van de vorige foto", want dat is volgens mij wat er in de bovenstaande code gebeurt.
Dit wordt natuurlijk mede bepaald door hoeveel verschillende foto's je daadwerkelijk hebt.
Misschien is het handiger om de (alle) bestaande foto's in een random volgorde te zetten in plaats van elke volgende foto random te maken waarbij "random" niet meer is dan "verschilt van de vorige foto", want dat is volgens mij wat er in de bovenstaande code gebeurt.
Dit wordt natuurlijk mede bepaald door hoeveel verschillende foto's je daadwerkelijk hebt.
Precies. Direct een leuke oefening..
Maak met PHP een array van foto URL's en gebruik shuffle() om deze door elkaar te gooien. Gebruik het resultaat van deze array in je javascript.
Allereerst natuurlijk hartelijk dank voor jullie reactie!
Maar dit is nl. wat ik bedoel dat ik nog nooit met PHP heb gewerkt en dus ook jullie advies (nog) niet begrijp.
Ik had gehoopt dat het met een kleine aanpassing gedaan kon worden.
Bijvoorbeeld door het woordje RANDOM te vervangen in ORDER. (wat ik ook heb gedaan, maar toen was de slideshow verdwenen) dus er snel weer random van gemaakt.
Frank: Jij schrijft: Dit wordt natuurlijk mede bepaald door hoeveel verschillende foto's je daadwerkelijk hebt.
Nou, dat zijn er 11 (slide1, slide2 enz.