Jak pewnie zauważyliście z poprzedniego wpisu:
Program nie działa przez <!Doctype html>
Uczę się "ruszania" obiektami na stronie.
Wpadłem na pomysł żeby robić to za pomocą pętli for:
var licznik = 0, div;
function ruszaj() {
div = document.getElementsByTagName("div")[0];
licznik++;
div.style.left=licznik + 'px';
}
function przesoon(){
for(var x = 0; x<200; x++) {
setTimeOut(ruszaj, 50)
}
}
Oczywiście wiem że to co napisałem nie będzie płynnie przesuwało diva o 200px.
Wiedziałem już wcześniej że do takich "zadań" używa się domknięć.
Z racji że nie udało mi się jeszcze pojąć tej wspaniałej idei, postanowiłem bezmyślnie podstawić pod wzór z tej strony:
http://blog.nebula.us/13-javascript-closures-czyli-zrozumiec-i-wykorzystac-domkniecia
for (var i = 0; i < 5; i++) {
(function (e) {
setTimeout(function () {
console.log(e);
}, 500);
})(i);
}
Nie zadziałało.
Co więcej: oryginalny kod wywołany w konsoli nie działa tak jak opisał to autor.
Moje pytanie: Jak mam przerobić tą funkcję żeby płynnie przesuwała diva o x pikseli i nie używała globali?