Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Nie chcę by zdjęcia w galerii pojawiały się losowo
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
darksiders94
Witam,
Mam kodzik js. a w nim prezentację zdjęć. Tylko, że zdjęcia losują się, a nie przechodzą jeden po drugim. Zalezy mi, aby wyświetlały się w kolejności od 1 do 3. Wiem, że za losowośc odpowiada linijka z Match.random, ale nie mam pomysłu jak ją zmienić.

var zdjecia = new Array("obraz-slider1","obraz-slider2","obraz-slider3");

const MINI = "zdjecia/mini/";

const SEC = 1000;
const ZMIANA = 5*SEC;

var interval = 0;

function losuj(){
var tab = new Array();
for(var i=0 i<1; i++){
tab[i] = Math.floor(Math.random()*zdjecia.length);
}
return tab;
}

function uaktualnij(){
var img = document.getElementsByTagName("img");
var nowe = losuj();
for(var i=0; i<img.length; i++){
img[i].src = MINI + zdjecia[nowe[i]] + ".jpg";
}
}

function startInterval(){
interval = setInterval(function(){ uaktualnij(); }, ZMIANA);
}

window.onload = function(){
uaktualnij();
startInterval();
}



Pomożecie? biggrin.gif
ziolo
Zmień funkcję uaktualnij, funkcję losuj możesz wywalić. Powinno być ok.

[JAVASCRIPT] pobierz, plaintext
  1. function uaktualnij(){
  2. var img = document.getElementsByTagName("img");
  3. for(var i=0; i<img.length; i++)
  4. {
  5. img[i].src = MINI + zdjecia[i] + ".jpg";
  6. }
  7. }
[JAVASCRIPT] pobierz, plaintext


darksiders94
No.. chyba nie.. Teraz wyświetla mi jedno zdjęcie i nie działa timer
W sumie to nawet nie wiem dlaczego.. przecież jest i++.. powinien robic skok o jeden obrazek
ziolo
Aha rozumiem, że w kodzie masz jeden element img.

To tak.

  1.  
  2. var zdjecia = new Array("obraz-slider1","obraz-slider2","obraz-slider3");
  3.  
  4. const MINI = "zdjecia/mini/";
  5.  
  6. const SEC = 1000;
  7. const ZMIANA = 5*SEC;
  8.  
  9. var interval = 0, indeks=0;
  10.  
  11. function uaktualnij(){
  12. var img = document.getElementsByTagName("img");
  13. for(var i=0; i<img.length; i++){
  14. img[i].src = MINI + zdjecia[indeks] + ".jpg";
  15. }
  16.  
  17. indeks++;
  18. if(indeks==zdjecia.length)
  19. indeks=0;
  20.  
  21. }
  22.  
  23. function startInterval(){
  24. interval = setInterval(function(){ uaktualnij(); }, ZMIANA);
  25. }
  26.  
  27. window.onload = function(){
  28. uaktualnij();
  29. startInterval();
  30. }
  31.  
darksiders94
Dobra, wyswietla..
Przez przypadek zakończyłeś linijkę ";;"
Dzięki za pomoc biggrin.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.