Hallo,
// IE?
if (imgs[i].style.filter != "undefined") {
typeof?
imgs[i].style.filter = "alpha(opacity=" + v + ")";
}
}step += this.fadeStep;
if (step <= 100) {
// nächsten Fade-Schritt ausführen
window.setTimeout(""
+ "FaderFramework.faders."
+ this.id
+ ".fade("
+ step
+ ");",
1);
Ich habe mir das nicht im Detail angeschaut, aber dieses Gefrickel mit als String zusammengesetztem JavaScript-Code ist immer langsam, unübersichtlich und führt u.U. dazu, dass die Architektur unsauber wird.
Ich habe es in einem anderen Thread ja schon gesagt:
1. setTimeout nimmt Funktionsreferenzen an, was i.d.R. dem String vorzuziehen ist,
2. Verschachtelte Funktionen bzw. Closures helfen immer weiter, um in dieser Funktion, die eigentlich in einem anderen Kontext ausgeführt wird, wieder zurück zum Instanzobjekt oder sonstigen benötigten Daten zu kommen. Globale Variablen und global zugängliche Listen mit allen Instanzen wie FaderFramework.faders sind zumindest dafür nicht nötig.
this.step = function (step) {
...
step += this.fadeStep;
var instanz = this;
setTimeout(function () {
instanz.step(step);
}, 1);
};
window.setTimeout(""
+ "FaderFramework.faders."
+ this.id
+ ".next();",
this.viewTime);
Wie oben, nur
instanz.next()
Mathias