Fejl i kode - objekt
Hmm...ja, er ikke nogen haj til hverken javascript eller oop, men forsøger lidt :-)Har problemer med følgende kode:
function kategoriObj( katID, katNavn, imgList ) {
this.ID = katID;
this.navn = katNavn;
this.loaded = false;
this.imageList = imgList;
this.printKat = printKatF;
this.printImgList = printImgListF;
this.loadImages = loadImagesF;
this.checkLoad = checkLoadF;
}
function printKatF() {
document.writeln('<div class="katHeadline" id="' + this.ID + '" onclick="kat' + this.ID +'.loadImages();">' + this.navn + '</div>');
document.writeln('<div id="loader' + this.ID + '" style="height:20px;width:250px;"><img src="images/loader.gif" style="width:0%;height=20px;" id="loadPic' + this.ID + '"></div>');
document.writeln('<div id="piclist' + this.ID + '" style="visibility:hidden;height:20px;width:250px;">HEJ</div>');
}
function printImgListF() {
document.getElementById("piclist" + this.ID ).style.visibility = 'visible';
}
function loadImagesF() {
this.percent = 100 / this.imageList.length;
this.currCount = 0;
this.preImages = new Array(this.imageList.length-1)
this.loaded = new Array(this.imageList.length-1)
for (i = 0; i < this.imageList.length; i++) {
this.preImages[i] = new Image()
this.preImages[i].src = this.imageList[i]
}
for (i = 0; i < this.preImages.length; i++) {
this.loaded[i] = false
}
this.checkLoad()
}
function checkLoadF() {
if (this.currCount == this.preImages.length) {
this.printImgList();
return
}
for (i = 0; i <= this.preImages.length; i++) {
if (this.loaded[i] == false && this.preImages[i].complete) {
this.loaded[i] = true
this.currCount++
}
}
document.getElementById('loadPic' + this.ID ).style.width = (this.percent * this.currCount) + '%';
setTimeout(this + ".checkLoad()",10)
}
Tror fejlen ligger i følgende: setTimeout(this + ".checkLoad()",10)
- eller også har jeg bare grundlæggende misforstået et par ting og det er vel også meget sandsynligt :-)
Håber i kan hjælpe mig...
