PDA

Visualizza la versione completa : [JavaScript] OOP...parentele tra gli oggetti


standard
07-09-2002, 00:21
ciao a tutti, sto cercando di realizzare un menu dinamico in JavaScript, e mi chiedevo se esiste un modo intelligente per gestire le parentele.
Mi spiego meglio, il costruttore del mio menu Ŕ del tipo:


function Menu(title,URL) {
this.title = title;
this.URL = URL;
this.subMenu = []
}

dove submenu sarÓ l'array che conterrÓ altri oggetti Menu (i sottomenu per l'appunto).
Avrei bisogno di poter conoscere dinamicamente quale sia il Menu "padre" di uno dei menu contenuti nell'array subMenu.
Faccio un esempio per capirci:


Home = new Menu("Home","home.html")
pag1 = new Menu("Pag1","pag1.html")
Home.subMenu[0] = pag1

Ora, una volta recuperato pag1, come posso sapere se sia contenuto in qualche altro Menu e in quel caso sapere quale?
C'Ŕ un metodo semplice?
grazie

standard
08-09-2002, 02:01
up

standard
09-09-2002, 11:38
...mmm...3d completamente ignorato :cry: :cry: (6 visite...5 erano le mie...:cry: :cry: :cry: )

sono indeciso se fare un altro up, o usare questo 3d come diario personale...tanto non lo leggerÓ nessuno ;)



....





UP

standard
09-09-2002, 11:56
UEEELAAAAAA!!!

GRAZIE per la risposta.


Detto tra noi... Ŕ una pessima idea creare un men¨ ( fisso ) in javascript perchŔ Ŕ il linguaggio sbagliato per approcciarsi a questo tipo di problemi.
Allora, sto scrivendo lo script per poter rendere utilizzabile e personalizzabile in modo semplice il menu da chiunque volesse, percui anche se il menu Ŕ una cosa "fissa", voglio rendere tutto il pi¨ dinamico possibile.


Crea un albero, crei come costruttore solo il nome che ha come attributi la root precedente e un aray per le foglie successive. Questo array non Ŕ nient'altro che una lista ( dinamica? si ... con javascript? boh ). A questo punto tutto ha origine da un puntatore alla prima struttura ( che potrebbe essere il men¨ stesso o il titolo ) e da li si apre il tuo men¨ con diverse voci e sottovoci. Trattandolo come un albero bidirezionale sai sempre risalire alla radice una volta giunto alle foglie.

Questa era anche la mia idea, ma volevo sapere se c'era un altro modo senza utilizzare un'altro puntatore nel costruttore.
Grazie per la conferma.

:ciauz:

Loading