Hallo,
OO
var MyBgColor = {
red : false,
green : false,
blue : false,
style : false,
createColorObj : function (value, range) {
return {
"value": value,
"max" : value,
"range" : range,
"dir" : 1
};
},Ich würde nicht behaupten, das das unbedingt eleganterer Code ist, er ist auf jeden Fall konventioneller und daher besser verständlich.
Wenn Du mir dazu noch einen Hint geben könntest, was o.b. eleganter machen würde. red, green und blue müssen doch als Objekte irgendwo stehen? Abgesehen davon könnnte man wohl besser gleich red : {}, ... schreiben und statt style eben elem : {}, also alles schon als leeres Objekt initialisieren?
Zur Funktion createColorObj: Die zusammengehörenden Werte pro Farbe sind doch aber wohl Objekte und sollten doch wohl schon alleine aus DRY-Gründen in einer Funktion erzeugt werden, oder?
Würde später im Laufe des Tages Deine weiteren Anmerkungen mal einbauen.
API heißt ja wohl, dass ich im window.onload möglichst nur eine Funktion meines BgColorChanger-Objektes aufrufe, in der dann auch die setInterval-Funktion gestartet wird. Insofer ist der Interval-Parameter schon sinnig, weil er ja das Tempo bestimmt.
Sinngemäßg sollte also im window.onload nur stehen:
MyBgColorChanger:start(configObj) (oder init), wobei das Konfig-Objekt alle nötigen Startdaten enthält, inklusive des Intervalls, mit dem setInterval bestückt werden sollte, oder?
Bis später
Gruß
jobo