Dag mensen
ik heb een klein/groot probleem en ik vind het niet.
ik maak een image object aan om de afmetingen op te vragen, per letter lust een while door een string afkomstig van een inputveld.
na het typen van een letter zie je een images tevoorschijn komen, het aantal images staat gelijk aan de aantal letters. tot hier werkt het allemaal. nu heb ik nog een functie(geen function) erbij geschreven zodat de kleur van de images veranderen. en hier loopt het vele malen fout. hij laat willekeurig images weg.
ik weet waar het probleem zit maar ik kan het niet oplossen. het heeft te maken met het opvragen van de breedte en de hoogte van de ingeladen image in de image object. soms geeft hij de waarde 0, terwijl hij wel geladen is (denk ik) dit heb ik proberen op te lossen door een while 0 zoals onder te zien.
hier de code:
weet hier iemand raad mee?
ik heb een klein/groot probleem en ik vind het niet.
ik maak een image object aan om de afmetingen op te vragen, per letter lust een while door een string afkomstig van een inputveld.
na het typen van een letter zie je een images tevoorschijn komen, het aantal images staat gelijk aan de aantal letters. tot hier werkt het allemaal. nu heb ik nog een functie(geen function) erbij geschreven zodat de kleur van de images veranderen. en hier loopt het vele malen fout. hij laat willekeurig images weg.
ik weet waar het probleem zit maar ik kan het niet oplossen. het heeft te maken met het opvragen van de breedte en de hoogte van de ingeladen image in de image object. soms geeft hij de waarde 0, terwijl hij wel geladen is (denk ik) dit heb ik proberen op te lossen door een while 0 zoals onder te zien.
hier de code:
Code:
var afb = new Image();
var geladenImage ;
if(teken.match(objRegExp)){
teken = teken.toLowerCase();
geladenImage = lettertype +"/"+kleur+"/"+teken+"_"+grote+".png";
}else if (teken.match(objRegExpLow)){
geladenImage = lettertype +"/"+kleur+"/"+teken+"_"+grote+".png";
}else{
geladenImage = lettertype +"/"+kleur+"/"+teken+"_"+grote+".png";
}
afb.src = geladenImage;
var p = 0;
while (!afb.complete)
{
p++;
setTimeout("",200);
if(p>10)
break;
}
var i = document.getElementById(eval("'image"+j+"'"));
i.style.visibility = "visible";
i.src = geladenImage;
var breed = afb.width;
var hoog = afb.height;
while (breed == "0"){
breed = afb.width;
}
while (hoog == "0"){
hoog = afb.height;
alert (hoog);
}
if(size == 6){
if(gekozenP =="mail" || gekozenP =="slagzin"){
breed = breed/10*4;
hoog = hoog /10*4;
}else{
breed = breed/10*6;
hoog = hoog /10*6;
}
i.style.width = breed + "px";
i.style.height = hoog + "px";
}else{
breed = breed/10*8;
hoog = hoog /10*8;
i.style.width = breed +"px";
i.style.height = hoog+'px';
}