Hallo Daniel,
funktioniert nicht, kommt Memory-Fehler.
Aber der Ansatz ist gut, hab mal selbst was zusammengebastelt:
<script type="text/javascript">
window.onload = function() {
var ids = new Array("te", "sa", "band");
for (var i = 0; i < ids.length; ++i) {
setInterval("setLoading(ids[i])",rand(1000,2000));
}
};
function rand(min,max)
{
return Math.ceil(min + Math.random() * (max - min));
}
function setLoadingEnd(elem)
{
document.getElementById(elem).innerHTML='normal';
}
function setLoading(elem)
{alert(elem);
document.getElementById(elem).innerHTML='<img src=\"loading.gif\">';
setTimeout('setLoadingEnd(elem);',rand(500,3500));
}
</script>
Funktioniert aber noch nicht. Die Funktion setLoading wird zuerst aufgerufen, und dort ist das Argument elem plötzlich undefiniert. Warum das?
In der For-Schleife noch mit einem Wert und dann beim Funktionsaufruf per setInterval muss was schiefgehen.
setInterval("setLoading(ids[i])",rand(1000,2000));
Wenn ich dort stat ids[i] z.B. einen Wert direkt (ohne Variablen-Nutzung) übergebe (z.B. "te") funktioniert alles tadellos.
Ich kapier das echt nicht mehr....