1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
|
function CreerMenu(profondeur,titre1,titre2,titre3,titre4,titre5,target) {
this.nb=0;this.prof=profondeur;
this.titre1=titre1; this.titre2=titre2; this.titre3=titre3; this.titre4=titre4; this.titre5=titre5; 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>";
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>";
}
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;}
}
}
}
// Fonctions destinées à afficher l'arborescence du menu
function space(i) {var Z="";for (var j=0;j<i;j++){Z+="&&&&";}return Z}
function Arbo(m) {
var Z="<BR>";
for (var i=0;i<m.nb;i++) {
Z+=space(m[i].deep)+m[i].txt+"&& <A href='"+m[i].page+"'>"+m[i].page+"</A><BR>"
}
document.write(Z);
} |
Partager