molily: Objekte

Beitrag lesen

Hallo!

  	listbox = $(data).find(".UIListBox");  
  	listID = $(listbox).attr("id");  
  	if (typeof listID != "undefined")  
  	{  
  		listID = new UIListBox(listbox);  
  	}  

>   
> Natürlich funktioniert das ganze nicht. Wenn die ID jetzt z.B. "MyList" hat, will ich das gerne  mit $.MyList.function(); ansprechen können. Wie macht man sowas?  
  
Du kannst die Instanzen als Eigenschaften an einem Objekt speichern. Als Eigenschaftsnamen kannst du die ID verwenden:  
  
~~~javascript
var allListBoxes = {};  
var listBox = new UIListBox();  
allListBoxes[listID] = listBox;

Wenn listID z.B. »foo« ist, so verweist allListBoxes.foo auf die entsprechende Instanz.

Ich würde vorschlagen, ein eigenes Objekt und nicht $ (vermutlich jQuery) zu verwenden. An $ hängen bereits viele andere Eigenschaften. Ein neues, eigenes Objekt ist ein leerer Namespace (Namensraum).

Grüße,
Mathias