*Aaaaaaaaaarg*
Thomas J.
- dhtml
Bei dieser Homepage tritt ein äußerst interessanter Effekt mit IE5 auf.
Ich verwende eine preLoad-Funktion mit Prozentbalken, die folgendermaßen funktioniert:
function preLoad() {
puzzle1 = new Image();
puzzle1.onload = check;
puzzle1.src = "images/puzzle/puzzle1a.gif";
.
.
.
if(is.ns) {
doc = "document";
sty = "";
htm = ".document"
} else if(is.ie) {
doc = "document.all";
sty = ".style";
htm = ""
}
var count = 0;
function hide() {
var status = eval(doc + '["msgLyr"]' + sty);
status.visibility = "hidden";
}
function check() {
count++;
if(count == 28) {
setTimeout("initialize()", 100); //sorgt für Bewegung
setTimeout("hide()", 200); //blendet den Prozentbalken aus
}
else {
var status = eval(doc + '["msgLyr"]' + htm);
var msg = "'<TABLE id=pre BORDER=0 CELLSPACING=0 CELLPADDING=2 WIDTH=200><TR><TD WIDTH=' + Math.round((count/28)*100) + '% BGCOLOR=#FF0000 ALIGN=RIGHT>' + Math.round((count/28)*100) + '%' +'</TD><TD BGCOLOR=#800000 VALIGN=MIDDLE> </TD></TR><TR><TD COLSPAN=2 ALIGN=CENTER>Percent Images Loaded</TD></TR></TABLE>'";
if(is.ns) {
status.write(msg);
status.close();
} else if(is.ie) {
status.innerHTML = msg;
}
}
}
mit onLoad="preload" im body-tag und weiter mit:
winW = (is.ns)? window.innerWidth : document.body.offsetWidth
winH = (is.ns)? window.innerHeight : document.body.offsetHeight
writeCSS(css('msgLyr',0,0,winW,winH)) //schreibt css (wie der Name schon sagt)
Mit NS in allen Versionen funzt das wunderbar. Mit IE passiert das:
Beim ersten Aufruf werden zwar die 28 Grafiken geladen aber der Prozentbalken bewegt sich nicht.
Wenn man dann auf "Aktualisieren" klickt, werden wieder alle 28 Grafiken geladen (der Prozentbalken schweigt) und dann (Achtung jetzt kommt's!) werden die Grafiken noch ein zweites mal geladen, und diesmal wandert auch der Prozentbalken.
Kann mir das irgend jemand erklären?
Hoppala
Die URL ist: www.galeriemichaelschulz.de