Schorsch: Class.create() OO mit prototype

Beitrag lesen

Guten Abend

Ich versuche eine Klasse mit dem Javascript Framerwork zu erstellen.
Leider habe ich Wissenslücken.
Nun bin ich auf der Suche nach Hilfe.

Auf meiner Seite habe ich einen Link.
Er symbolisiert ein Objekt "Schuh".

<a href="#" onclick="zeige_groesse(this)"
   title="Schuhgrösse anzeigen"> Zeige ! </a>

Wenn ich auf den Schuh klicke, soll ein Objekt "Schuh" geboren werden. Dann will ich dessen Grösse wissen.
Dazu habe ich eine Schuh-Klasse gebaut:

var Schuh = Class.create();
Schuh.prototype = {
  initialize: function(element, opt){
    var defaults = {
      groesse : 40,
      farbe : "rot",
      zustand : "gut"
    }
}

Wie man sieht, sind darin bereits
ein paar default Werte gesetzt.

Klicke ich auf den Schuh-Link
wird ein neues Objekt Schuh erzeugt.
Diesem neuen Objekt will ich Werte mitgeben.
Das sollte so gehen:

function zeige_groesse(obj)
{
  opt = {
    groesse: 49
  }
  var Schuh = Class.create(obj, opt);
}

Nun wird (so stelle ich mir das vor) ein Schuh produziert.
Eine Riesenlatsche mit Grösse 49.

Dazu muss ich aber meine Schuh-Klasse etwas anpassen,
damit der Wert in "opt" drinn auch ausgelesen wird:

var Schuh = Class.create();
Schuh.prototype = {
  initialize: function(element, opt){
    var defaults = {
      groesse : 40,
      farbe : "rot",
      zustand : "gut"
    }

// Übergebene Grösse in "opt" abfangen
    // Wie muss ich das lösen?
    // (opt.groesse == 49) alert("Sehr gross!");

// defaults mit opt verschmelzen
    // wobei opt defaults überschreiben muss
    // Wie muss ich das lösen?
    // defaults = Object.extend(defaults, opt || {});
}

Am Schluss möchte ich sagen können:

alert(Schuh.groesse);

Und dann soll 49 ausgegeben werden.

Wer kann das Wirr-Warr in meinem Kopf lösen?

Schorsch