Šta je novo?

Slideshow

  • Začetnik teme Začetnik teme Jole0
  • Datum pokretanja Datum pokretanja

Jole0

Cenjen
Učlanjen(a)
16.09.2012
Poruke
6
Poena
151
Ne znam javascript, pa bih molio, ako neko ima volje da mi objasni ša znači (izvršava) koji deo koda ovog slajdera.
Hvala unapred na odvojenom vremenu!
 

Prilozi

  • kod.png
    kod.png
    50.3 KB · Pregleda: 169
Necu ti objasnjavati svaku liniju pojedinacno, vec samo one koji ce ti trebati da razumes funkcionalnosti iza doticnog koda.

Kod:
var interval = 3 * 20 //broj sekundi izmedju promena
Kod:
var images = document.getElementsByTagName("img"); //nadji sve elemente koji imaju 'img' tag
Kod:
var imageCount = images.length //prebroj koliko je elementa nadjeno u liniji iznad
Kod:
var imageArray = []; //definisi prazan niz

To ti je sto se tice promenljivih... a sada funkcije:

Kod:
var randomize = function() ...
Ova linija koda je deklaracija funkcije "randomize" koja defakto ti vraca -1, 0 ili 1 vrednosti.

sada petlja:
Kod:
for(var i = 0; i < imageCount; i++) {
images[i].className = 'fade-out'; // za svaki element iz niza 'images' dodeli im klasu 'fade-out'
imageArray[i] = images[i]; // defakto kopiraj ceo niz, sa dodeljenom klasom, u drugi niz
}

imageArray.sort(randomize); // sortiraj niz prema random broju koji ti vrati funkcija 'randomize'
 
A sada ova "fade" funkcija

Kod:
var fade = function() {
imageArray[current++].className = 'fade-out'; // nakon sto uvelicas promenljivu 'current' za 1 i nadjes prema tom indeksu element u nizu 'imageArray', dodeli mu klasu sa nazivom 'fade-out'

if (current == imageCount) { // ako je vrednost promenljive 'current' jednaka vrednosti broju elementa koji se nalazi u 'imageCount'
current =0; // defakto vrati vrednost promenljive 'current' na 0 (sto je ujedno i pocetna vrednost)
imageArray.sort(randomize);
}

imageArray[current].className = 'fade-in'; // nadji element u nizu 'imageArray' koji se nalazi na indeksu koji je jednak vrednosti promenljive 'current' i dodeli mu klasu 'fade-in' (ovo ukratko znaci da ce prikazati ovaj element)

setTimeout(fade, interval * 100); // postavi timeout za funkciju 'fade' (bukvalno samo na sebe) sa interval od 6000(3 * 20 * 100) sto je 6s.
};

fade(); // pokreni funkciju prvi put



Nadam se da sam ti uspesno objasnio sta se zbiva u doticnom kodu...

p.s.
bilo bi kul da ovakva pitanja postavljas na devops.rs (pogledaj u moj potpis) jer tamo mozemo lakse i brze da ti se odgovori. 😉
 
Poslednja izmena:
Hvala na odvojenom vremenu za objašnjenje koda. Do sada nisam ni znao da postoji "DevOps" pa ću od sada i da koristim vaše strane, jer vidim, na prvi pogled, da ima mnogo zanimljivog štiva. Nadam se da mi niko neće zameriti, jer sam samo hobista i ne živim od web dizajna, a verovatno nikada ni neću, jer da bi živeo od ovog, moraš biti 100% posvećen i pratiti trendove. Ali, više znanja, nije nikada na odmet.
U svakom slučaju , još jednom Hvala na pojašnjenju primera koda!
 
Nazad
Vrh Dno