Lorr Hyde L'univers est trop grand Zut ! | un ptit code que j'ai eu utiliser ...
cadeau ...
Code :
- <SCRIPT type="text/javascript">
- var menu=new CreerMenu(3,"Theme","Categorie","SousCategorie","SousSousCategorie","_blank" );
- // CreerMenu(Nb de listes, titre1, titre2, titre3, target)
- // Nb listes=4 maxi
- // Les 4 titres sont obligatoires (meme si Nb_liste<4)
- // target=nom de la frame ou "self" si c'est la fenetre elle meme, "_blank" pour une nouvelle
- // Pour ajouter les liens dans les listes, utiliser menu.Add
- // Menu.Add(numéro de la liste, texte, page à charger)
- menu.Add(1,"1000","" );
- menu.Add(2,"1100","" );
- menu.Add(3,"1110","URL" );
- menu.Add(3,"1120","URL" );
- menu.Add(2,"1200","" );
- menu.Add(3,"1210","URL" );
- menu.Add(3,"1220","URL" );
- menu.Add(1,"2000","" );
- menu.Add(2,"2100","" );
- menu.Add(3,"2110","URL" );
- menu.Add(3,"2120","URL" );
- menu.Add(2,"2200","" );
- menu.Add(3,"2210","URL" );
- menu.Add(3,"2220","URL" );
- function CreerMenu(profondeur,titre1,titre2,titre3,titre4,target) {
- this.nb=0;this.prof=profondeur;
- this.titre1=titre1; this.titre2=titre2; this.titre3=titre3; this.titre4=titre4; this.target=target
- this.Add=AddObjet;
- this.Aff=AffMenu;
- }
- function AddObjet(deep,txt,page) {
- var rub = new Object;
- rub.deep=deep;
- rub.txt=txt;
- rub.page=page;
- this[this.nb]=rub;
- this.nb++;
- }
- function AffMenu() {
- var Z="<FORM name='mf'>";
- Z+="<SELECT size=1 name='list1' onChange='Clic(1)'><OPTION selected>"+this.titre1+"</OPTION>";
- for (var i=0;i<this.nb;i++) {
- if (this[i].deep==1) {
- Z+="<OPTION value='"+i+"'>"+this[i].txt+"</OPTION>"
- }
- }
- Z+="</SELECT><br>";
- for (var i=2;i<=menu.prof;i++) {
- Z+="<SELECT name='list"+i+"' onChange='Clic("+i+" )'><OPTION>"+eval("menu.titre"+i)+"</OPTION><OPTION></OPTION><OPTION></OPTION><OPTION></OPTION><OPTION></OPTION><OPTION></OPTION></SELECT><BR>";
- }
- Z+="</FORM>";
- document.write(Z);
- }
- function add() {
- var c=new Option("ADD","",true,true);
- document.forms[0].elements["list"].options[0]=c;
- }
- function Clic(no) {
- var valeur=document.forms["mf"].elements["list"+no].options[ document.forms["mf"].elements["list"+no].selectedIndex].value;
- if ((valeur!="" )&&(valeur!=null)&&(no<menu.prof)) {
- var deep=menu[valeur].deep;
- var no2=1;
- for (var noX=(no+1);noX<=menu.prof;noX++) {
- document.forms["mf"].elements["list"+eval(noX)].options.length=0;
- var titre=eval("menu.titre"+noX);
- var c=new Option(titre);
- document.forms["mf"].elements["list"+(noX)].options[0]=c;
- document.forms["mf"].elements["list"+(noX)].selectedIndex=0;
- }
- valeur++;
- for (var i=valeur;i<menu.nb;i++) {
- //alert(i);
- if (menu[i].deep==deep+1) {
- //alert("no="+no+" texte="+menu[i].txt);
- var c=new Option(menu[i].txt,i);
- document.forms["mf"].elements["list"+(no+1)].options[no2]=c;
- no2++;
- } else { if (menu[i].deep==deep){i=menu.nb;}}
- }
- document.forms["mf"].elements["list"+(no+1)].options.length=no2+1;
- document.forms["mf"].elements["list"+(no+1)].selectedIndex=0;
- Clic(no+1)
- valeur--;
- }
- if ((valeur!="" )&&(valeur!=null)) {
- var page=menu[valeur].page;
- if ((page!="" )&&(page!=null)) {
- if (menu.target=="self" ) {window.location=page}
- else if (menu.target=="_blank" ) {window.open(page,"","menubar,scrollbars,toolbar,status,location" )}
- else {parent.frames[menu.target].location.href=page;}
- }
- }
- }
- </SCRIPT>
|
|