Javascript Image.loaded Problem
explofish
- javascript
0 Struppi
Hallo!
Ich hänge hier schon länger an einem Problem:
Ich möchte, dass das Hintergrundbild durchgewechselt wird. Nun habe ich festgestellt dass das objekt image.loaded vor image.src stehen muss. leider bekommt meine funktion dann die quelle gar nicht mehr mit!
hat jemand ideen woran der fehler liegen könnte?
Danke euch!
<script type="text/javascript">
//Alle Bilder die durchgeswitcht werden sollen, definieren:
pictures = new Array("bg1.jpg", "bg2.jpg", "bg3.jpg");
//Letztes Bild definieren
next_pic=0;
//Wenn die Seite geladen wurde, wird das "nächste bild geladen
function load_next()
{
nextImage = new Image();
nextImage.loaded=imageLoaded();
nextImage.src = 'switch_images/'+pictures[next_pic];
next_pic++;
}
function imageLoaded(){
document.body.style.backgroundImage = 'url('+nextImage.src+')';
window.setTimeout(load_next, 5000);
}
load_next();
</script>
Ich möchte, dass das Hintergrundbild durchgewechselt wird. Nun habe ich festgestellt dass das objekt image.loaded vor image.src stehen muss. leider bekommt meine funktion dann die quelle gar nicht mehr mit!
hat jemand ideen woran der fehler liegen könnte?
So wie du es machst, ist es falsch.
Der Event heißt onload und du musst dem Handler eine Funktionsreferenz zuweisen.
Statt:
nextImage.loaded=imageLoaded();
musst du es so schreiben
nextImage.onload = imageLoaded;
function imageLoaded(){
in der Funktion kannst du jetzt auf this.src zugreifen.
Struppi.