[JavaScript]: dites moi si c'est faisable en js ...

: dites moi si c'est faisable en js ... [JavaScript] - Programmation

Marsh Posté le 14-05-2001 à 11:10:51    

Voila, je sorts du Java, donc de l'objet pure. Alors je ne sais pas trop si le javascript a les meme possibilités.
Là je cherche a faire un algo pour creer dynamiquement des menus dans un site web.
En gros, voila ma struture :
[CODE]
class Menu
{
    //tableau contenant les elements enfants
    private menu[] listeEnfants;
 
    private String nom;
    private String lien;
     
    //constructeur
    Menu(nom,lien)
    {
         this.nom=nom;
         this.lien=lien;
         this.listeEnfants=new menu[];
    }
 
    //ajout d'un sous menu
    void ajoutEnfant(Menu sousMenu)
    {
        this.listeEnfants[this.listeEnfants.lenght]=sousMenu;
    }
}
 
et c tout !
ainsi, par exemple je veux obtenir ce menu ;
 
*Partie 1
   - sous titre1
   - sous titre2
      - sous sous titre 1
   -sous titre3
 
voila comment je le construirai :
(lorsqu'il y a "-" a la place d'un lien, c que je ne veux pas de lien)
partie1=new Menu("Partie 1","-" );
partie1.ajoutEnfant(new Menu("sous titre1","soustitre1.html" ));
soustitre2=new Menu("sous titre2","-" );
sousTitre2.ajoutEnfant(new Menu("sous soustitre1","soussoustitre1.html));
partie1.ajoutEnfant(soustitre2);
partie1.ajoutEnfant(new Menu("sous titre3","soustitre3.html" ));
 
Voila ma question est : c'est faisbale en javascript ? je fais comment la classe, et comment la methode associée ???
merci ! :jap:

Reply

Marsh Posté le 14-05-2001 à 11:10:51   

Reply

Marsh Posté le 14-05-2001 à 11:20:16    

N'étant pas un expert, voici un site ou tu pourra peut-être trouver ton bonheur... (je pense que oui  ;) )
abc-creatweb.com
 
Bon courage

Reply

Marsh Posté le 14-05-2001 à 11:30:42    

C'est tout a fait faisable en JS.
Cependant, tu ne peut pas implementer ta classe de la meme facon.
Il y a une conception objet aussi en JS, mais elle estm oins flagrante.
Je te laisse chercher un peu pour y arriver , et si vraiment il le faut, je te donnerai un exemple... sans te cracher la classe tout faite bien entendu (lol)

Reply

Marsh Posté le 14-05-2001 à 12:00:25    

Quel est l'interet de me faire chercher ? je veux savoir la syntaxe pour faire des classes, mais je n'ai aucun bouquin ni aucune doc, a part le web. Et je n'ai trouvé aucun site qui me disait comment faire ...

Reply

Marsh Posté le 14-05-2001 à 12:11:00    

bonjour !!!
 
  ben gros en javascript, tu n'as pas besoin de declarer ta classe, il suffit d'appeler diretement le constructeur en fait.

Code :
  1. function menu(nom,lien) {
  2.   this.nom=nom;
  3.   this.lien=lien;
  4.   this.listeEnfants=new Array();
  5.   } 
  6. function ajoutEnfant(menu,sousMenu) {
  7.   menu.listeEnfants[menu.listeEnfants.lenght]=sousMenu;
  8.   }


 
disons que tu peux le faire comme ca. La premiere fonction sert de constructeur et la deuxiemme permet d'ajouter un enfant à une menu. Il doit etre possible de l'utiliser comme une methode mais  
je n'ai jamais essayé.
 

Code :
  1. function ajoutEnfant(sousMenu) {
  2.   this.listeEnfants[this.listeEnfants.lenght]=sousMenu;
  3.   }
  4. function menu(nom,lien) {
  5.   this.nom=nom;
  6.   this.lien=lien;
  7.   this.listeEnfants=new Array();
  8.   this.ajoutEnfant=ajoutEnfant;
  9.   }


Attention en javascript il n'ya pas de type donc il ne faut pas specifier de type. Un tableau peu contenir absolument n'importe quoi :

Code :
  1. var tab=new Array[4];
  2. tab[0]=1;                   // entier  
  3. tab[1]=document.all.champs; // reference a un input par exemple
  4. tab[2]='coucou';            // une chaine de caracteres
  5. tab[3]=new Image();         // une image  
  6. tab[3].src='toto.jpg';

Reply

Marsh Posté le 14-05-2001 à 12:19:58    

Ok merci j'essayerai ça .... qd j'aurai resolu mon nouveau pb, lié a netscape ...(toujours).... voir mon new post si vous en avez le courage ...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed