
/****************************************
*Menu dynamique vertical *
*Daniel Fabien21-05-2002 *
*http://www.script-masters.com *
*Prière de conserver ce message *
****************************************/


<!-----------------------Edition des caractèristiques du menu ----------------------------->

var largeur = 550;//Largeur du menu
var gauche = 60;//nombre de pixe de la gauche de l'écran
var top = 70;//Nombre de pixels du haut de la page
var couleur_police_cat="#000066";//Couleur du texte des categories
var couleur_police_scat="#000066";//Couleur du texte des sous-categories
var couleur_cat="#cccccc";//Couleur de fond des categories
var couleur_scat="#bbd6f0";//Couleur de fond des sous-categories


/********************************************************
*Attention : la modification des 2 variables ci-dessous *
*peut provoquer d'important bug d'affichages *
*Il est fortement conseillé de les conserver en état. *
*********************************************************/
var taille = 12;//Police de caractères
var police = "Verdana";//Type de police



<!-----------------------Texte et lien des menus et sous menus---------------------------->

var nb_elem = 19;//Nombre de categorie dans le menu

var nb_souscat = new Array(nb_elem);//Nb_souscat contient le nombre de sous categorie pour chaque categorie

nb_souscat[0] = 0;//Nombre de sous categorie 1
nb_souscat[1] = 0;//Nombre de sous categorie 2
nb_souscat[2] = 0;//Nombre de sous categorie 3
nb_souscat[3] = 0;//Nombre de sous categorie 4
nb_souscat[4] = 0;
nb_souscat[5] = 0;
nb_souscat[6] = 4;
nb_souscat[7] = 3;
nb_souscat[8] = 2;
nb_souscat[9] = 2;
nb_souscat[10] = 5;
nb_souscat[11] = 2;
nb_souscat[12] = 27;
nb_souscat[13] = 1;
nb_souscat[14] = 0;
nb_souscat[15] = 1;
nb_souscat[16] = 20;
nb_souscat[17] = 8;
nb_souscat[18] = 19;
//répeter aussi souvent qu'il y a de categorie... 


var categorie = new Array(nb_elem);
var soustab = new Array;

var tab0 = new Array(nb_souscat[0]);
var tab1 = new Array(nb_souscat[1]);
var tab2 = new Array(nb_souscat[2]);
var tab3 = new Array(nb_souscat[3]);
var tab4 = new Array(nb_souscat[4]);
var tab5 = new Array(nb_souscat[5]);
var tab6 = new Array(nb_souscat[6]);
var tab7 = new Array(nb_souscat[7]);
var tab8 = new Array(nb_souscat[8]);
var tab9 = new Array(nb_souscat[9]);
var tab10 = new Array(nb_souscat[10]);
var tab11 = new Array(nb_souscat[11]);
var tab12 = new Array(nb_souscat[12]);
var tab13 = new Array(nb_souscat[13]);
var tab14 = new Array(nb_souscat[14]);
var tab15 = new Array(nb_souscat[15]);
var tab16 = new Array(nb_souscat[16]);
var tab17 = new Array(nb_souscat[17]);
var tab18 = new Array(nb_souscat[18]);
//répeter aussi souvent qu'il y a de categorie... 


<!-------Edition PREMIERE categorie et sous categorie------------>
categorie[0] = " R : Romans / Romaner"; //Titre de la categorie


<!-------Edition SECONDE categorie et sous categorie------------>
categorie[1] = " T : Théâtre / Teater";//Titre de la categorie


<!-------Edition TROISIEME categorie et sous categorie------------>
categorie[2] = " P : Poésie / Poesi";//Titre de la categorie


<!-------Edition QUATRIEME categorie et sous categorie----------
categorie[3] = " N : Littérature Nordique traduite en français / Nordisk litteratur oversat til fransk"; //Titre de la categorie


<!-------Edition 5eme categorie et sous categorie----------
categorie[4] = " D : Lecture facile/Débutants / Letlæsning/Begyndere"; //Titre de la categorie


<!-------Edition 6eme categorie et sous categorie----------
categorie[5] = " BD : Bandes dessinées / Tegneserier"; //Titre de la categorie


<!-------Edition 7eme categorie et sous categorie----------
categorie[6] = " CD"; //Titre de la categorie

tab6[0] = " CD CHA : Chanson française";//Premier sous-titre|liens|cible
tab6[1] = " CD MUS : Musiques amplifiées/Rap/Reggae";//Second sous-titre|liens|cible
tab6[2] = " CD JAZ : Jazz/Musiques du monde";//Troisième sous-titre|liens|cible
tab6[3] = " CD D : 		Livres-CD";

<!-------Edition 8eme categorie et sous categorie----------
categorie[7] = " DVD"; //Titre de la categorie

tab7[0] = " DVD F : Fiction / fiktion";//Premier sous-titre|liens|cible
tab7[1] = " DVD T : Théâtre";//Second sous-titre|liens|cible
tab7[2] = " DVD D :	Documentaires (classés selon les indices généraux du plan de classement)";//Troisième sous-titre|liens|cible

<!-------Edition 9eme categorie et sous categorie----------
categorie[8] = " VHS"; //Titre de la categorie

tab8[0] = " VHS F :	Fiction / fiktion";//Premier sous-titre|liens|cible
tab8[1] = " VHS D :	Documentaires / dokumentar";//Second sous-titre|liens|cible

<!-------Edition 10eme categorie et sous categorie----------
categorie[9] = " 000 : Manuels / Håndbøger"; //Titre de la categorie

tab9[0] = " 010 : Bibliographies / Bibliografier";//Premier sous-titre|liens|cible
tab9[1] = " 070 : Médias, journalisme, éditions";//Second sous-titre|liens|cible

<!-------Edition 11eme categorie et sous categorie----------
categorie[10] = " 100 :	Philosophie/Psychologie / Filosofi/Psykologi"; //Titre de la categorie

tab10[0] = " 109 : Histoire de la philosophie / Filosofihistorie";//Premier sous-titre|liens|cible
tab10[1] = " 150 : Psychologie / Psykologi";//Second sous-titre|liens|cible
tab10[2] = " 150.195 : psychanalyse / Psykoanalyse";//Troisième sous-titre|liens|cible
tab10[3] = " 194 : Philosophie francaise / Fransk filosofi";
tab10[4] = " 194.92 : Philosophes francais / Franske filosoffer";

<!-------Edition 12eme categorie et sous categorie----------
categorie[11] = " 200 :	Religion / Religion"; //Titre de la categorie

tab11[0] = " 220 : Christianisme / Kristendom";//Premier sous-titre|liens|cible
tab11[1] = " 297 : Islam / Islam";//Second sous-titre|liens|cible

<!-------Edition 13eme categorie et sous categorie----------
categorie[12] = " 300 :	Sciences sociales / Samfundsvidenskab"; //Titre de la categorie

tab12[0] = " 301 : Sociologie et Société / Sociologi og samfund";//Premier sous-titre|liens|cible
tab12[1] = " 301.6 : Sociologie et société : Afrique";//Second sous-titre|liens|cible
tab12[2] = " 301.61 : Sociologie et société : Maghreb";//Troisième sous-titre|liens|cible
tab12[3] = " 302 : Communication / Kommunikation";//Troisième sous-titre|liens|cible
tab12[4] = " 303.38 : opinion publique";//Troisième sous-titre|liens|cible
tab12[5] = " 305.4 : femmes / Kvinder";//Troisième sous-titre|liens|cible
tab12[6] = " 305.55 : Intellectuels / Intellektuelle";//Troisième sous-titre|liens|cible
tab12[7] = " 305.8 : Groupes éthniques et régionaux / Etniske grupper og andre minoriteter";//Troisième sous-titre|liens|cible
tab12[8] = " 306 : Anthropologie culturelle / Kulturantropologi";//Troisième sous-titre|liens|cible
tab12[9] = " 306.4 : Pratiques culturelles / Kulturelle praksiser";//Troisième sous-titre|liens|cible
tab12[10] = " 306.44 : Sociolinguistique, ethnolinguistique";//Troisième sous-titre|liens|cible
tab12[11] = " 306.8 : Mariage et famille / Ægteskab og familie";//Troisième sous-titre|liens|cible
tab12[12] = " 307 : Communautés / Samfund";//Troisième sous-titre|liens|cible
tab12[13] = " 320 : Science politique / Statskundskab";//Troisième sous-titre|liens|cible
tab12[14] = " 320.55 : Théories et idéologies à base religieuse";//Troisième sous-titre|liens|cible
tab12[15] = " 322 : Relations entre l’Etat et les groupes sociaux organisés";//Troisième sous-titre|liens|cible
tab12[16] = " 325 : Colonies, émigration, immigration / Kolonier, emigration, immigration";//Troisième sous-titre|liens|cible
tab12[17] = " 327 : Relations Internationales / Internationale forhold";//Troisième sous-titre|liens|cible
tab12[18] = " 327.4 : Relations internationales : Europe / Internationale forhold: Europa";//Troisième sous-titre|liens|cible
tab12[19] = " 327.175 : Francophonie / Frankofoni";//Troisième sous-titre|liens|cible
tab12[20] = " 330 : Economie / Økonomi";//Troisième sous-titre|liens|cible
tab12[21] = " 340 : Droit / Jura";//Troisième sous-titre|liens|cible
tab12[22] = " 350 : Etat francais / Den franske stat";//Troisième sous-titre|liens|cible
tab12[23] = " 370 : Education, enseignement, écoles / Uddannelse, undervisning, skole";//Troisième sous-titre|liens|cible
tab12[24] = " 380 : Commerce, transport / Handel, transport";//Troisième sous-titre|liens|cible
tab12[25] = " 390 : Coutumes, moeurs, savoir-vivre, folklores / Sæder, skikke, levemåde, folklore";//Troisième sous-titre|liens|cible
tab12[26] = " 391 : Mode / Mode";//Troisième sous-titre|liens|cible

<!-------Edition 14eme categorie et sous categorie----------
categorie[13] = " 400 :	Langage / Sprog"; //Titre de la categorie

tab13[0] = " 445 :	Grammaires / Grammatik";//Premier sous-titre|liens|cible


<!-------Edition 15eme categorie et sous categorie----------
categorie[14] = " 500 :	Sciences de la nature et mathématiques / Naturvidenskab – matematik"; //Titre de la categorie


<!-------Edition 16eme categorie et sous categorie----------
categorie[15] = " 600 :	Techniques / Teknik"; //Titre de la categorie

tab15[0] = " 642 :	Art de la table / Bordets Glæder";//Premier sous-titre|liens|cible

<!-------Edition 17eme categorie et sous categorie----------
categorie[16] = " 700 :	Art / Kunst"; //Titre de la categorie

tab16[0] = " 701 : Philosophie et théorie des arts";//Premier sous-titre|liens|cible
tab16[1] = " 704.03 : Art des groupes nationaux (éthniques, culturels) / Fremmed kunst";//Second sous-titre|liens|cible
tab16[2] = " 709.04 : 20ème siècle / 20. årh.";//Troisième sous-titre|liens|cible
tab16[3] = " 709.2 : Artistes";
tab16[4] = " 720 : Architecture / Arkitektur";
tab16[5] = " 724.6 : Architecture du 20ème siècle / 20. årh.’s arkitektur";
tab16[6] = " 730.92 : Sculpteurs / Skulptører";
tab16[7] = " 745.4 : Design / Design";
tab16[8] = " 745.409 2 : designers";
tab16[9] = " 746 : Textiles / Tekstiler";
tab16[10] = " 746.92 : couturiers";
tab16[11] = " 750.9 : Histoire de la peinture / Malerkunstens historie";
tab16[12] = " 750.92 : Peintres / Malere";
tab16[13] = " 770.92 : Photographes / Fotografer";
tab16[14] = " 780 :	Musique / Musik";
tab16[15] = " 780.9 : Histoire de la musique / Musikhistorie";
tab16[16] = " 781.6 : Chanson francaise, musique populaire / Franske viser, populærmusik";
tab16[17] = " 791.43 : Cinéma / Film";
tab16[18] = " 791.430.92 : les cineastes";
tab16[19] = " 796 : Sport / Sport";

<!-------Edition 18eme categorie et sous categorie----------
categorie[17] = " 800 :	Critique littéraire / Litteraturkritik"; //Titre de la categorie

tab17[0] = " 809 : Histoire de la littérature – critique littéraire / Litteraturhistorie - litteraturkritik";//Premier sous-titre|liens|cible
tab17[1] = " 840.8 : Anthologies de littérature française / Antologier over fransk litteratur";//Second sous-titre|liens|cible
tab17[2] = " 840.9 : Histoire de la littérature française / Fransk litteraturhistorie";//Troisième sous-titre|liens|cible
tab17[3] = " 840.92 : Auteurs";
tab17[4] = " 841 : Poésie francaise / Fransk poesi";
tab17[5] = " 842 : Théâtre francais / Fransk teater";
tab17[6] = " 843 : Romans / Romaner";
tab17[7] = " 844 : Essais / Essays";

<!-------Edition 19eme categorie et sous categorie----------
categorie[18] = " 900 :	Histoire/Géographie / Historie/Geografi"; //Titre de la categorie

tab18[0] = " 909 : Histoire du monde / Verdenshistorie";//Premier sous-titre|liens|cible
tab18[1] = " 914.44 : Tourisme en France / Turisme i Frankrig";//Second sous-titre|liens|cible
tab18[2] = " 914.442 : Nord de la France";//Troisième sous-titre|liens|cible
tab18[3] = " 914.445 : Centre de la France";
tab18[4] = " 914.447 : Sud-Ouest de la France";
tab18[5] = " 914.449 : Sud-Est de la France";
tab18[6] = " 914.48 : Géographie de la Scandinavie / Skandinaviens geografi";
tab18[7] = " 914.729 : Géographie des antilles";
tab18[8] = " 944 : Histoire de France (générale) / Frankrigs historie (generelt)";
tab18[9] = " 944.004 : Histoire de France : groupes ethniques, raciaux";
tab18[10] = " 944.02 : de 987 à 1589 / Fra 987 til 1589";
tab18[11] = " 944.03 : de 1589 à 1789 / Fra 1589 til 1789";
tab18[12] = " 944.04 : Révolution (jusqu’en 1804) / Revolutionen (til 1804)";
tab18[13] = " 944.06 : Restauration (jusqu’en 1848) / Restaurationen (til 1848)";
tab18[14] = " 944.08 : de 1870 à nos jours / Fra 1870 til vore dage";
tab18[15] = " 944.081 : 3ème République (de 1870 à 1945) / 3. Republik (fra 1870 til 1945)";
tab18[16] = " 944.083 : 5ème République (de 1958 à nos jours) / 5. Republik (fra 1958 til vore dage)";
tab18[17] = " 944.36 : Histoire de Paris / Paris’ historie";
tab18[18] = " 948 : Histoire de la Scandinavie (Europe du Nord) / Skandinavisk historie (Nordeuropa)";


soustab[0] = tab0;
soustab[1] = tab1;
soustab[2] = tab2;
soustab[3] = tab3;
soustab[4] = tab4;
soustab[5] = tab5;
soustab[6] = tab6;
soustab[7] = tab7;
soustab[8] = tab8;
soustab[9] = tab9;
soustab[10] = tab10;
soustab[11] = tab11;
soustab[12] = tab12;
soustab[13] = tab13;
soustab[14] = tab14;
soustab[15] = tab15;
soustab[16] = tab16;
soustab[17] = tab17;
soustab[18] = tab18;
//répeter aussi souvent qu'il y a de categorie... 


<!------------------------------------Fonctions-------------------------------------------->
<!------------------------------NE PLUS RIEN MODIFIER-------------------------------------->

var conf = -1;
function Init(){
    var hauteur = top;
    for(i=1;i<=nb_elem;i++){
        document.getElementById("menu"+i+"").style.top = hauteur;
        hauteur = hauteur + 17;
    }
}

function voir(z){
    if(conf==z){
        document.getElementById("sousmenu"+z+"").style.visibility = 'hidden';
        Init();
        conf=conf+nb_elem;
    }else{
        conf=z;
        
        //Calcul de la hauteur dont doit se baisser le menu
        haut=0;
        var haut = 15*nb_souscat[z-1]+z*18+top;
        
        
        //On retracte tous les éléments
        for(i=1;i<=nb_elem;i++){
            document.getElementById("sousmenu"+i+"").style.visibility = 'hidden';
        }
        
        //on les remets tous à leur place
        Init();
        
        //on cale le sous menu sous la categorie
        document.getElementById("sousmenu"+z+"").style.top = 16;
        dec = haut;
        
        //On peut alors baisser tous les autre menus
        for(i=z+1;i<=nb_elem;i++){
            
            document.getElementById("menu"+i+"").style.top = dec;
            dec=dec+18;
        }
        
        //Enfin, on rend le menu visible
        document.getElementById("sousmenu"+z+"").style.height = 15*nb_souscat[z-1];
        document.getElementById("sousmenu"+z+"").style.visibility = 'visible';
        
    }
    
}

function affiche(){
    
    //feuille de style
     document.write('<style>');
    document.write('div.menu{visibility:visible; border-width: 1px; border-style: solid;border-color: #ffffff;background-color: '+couleur_cat+'}');
    document.write('div.sousmenu{position:absolute; left:-1; height:30; visibility:hidden; padding: 3px;  width:'+ largeur +'; border-width: 1px; border-style: solid; border-color: #ffffff;background-color: '+couleur_scat+'}');
    document.write('a.menu{font-family: '+ police +'; color: '+couleur_police_cat+'; font-size: '+taille+'px; font-weight:bold; text-decoration: none;}');
    document.write('div.smenu{font-family: '+ police +'; color: '+couleur_police_scat+'; font-size: 11px; font-weight:; text-align:left; text-decoration: none;}');
    document.write('</style>');
    document.write('<div>');
    
    for(i=0;i<nb_elem;i++){
        boucle = nb_souscat[i];
        
        
        document.write('<div id="menu'+(i+1)+'" style="position:absolute;  left:'+ gauche +'px; width:'+ largeur +'px;" class="menu">');
        document.write('<a href="#" class="menu" onClick="javascript:voir('+(i+1)+')">'+categorie[i]+'</a>');
        
        document.write('<div width="'+ largeur +'" id="sousmenu'+(i+1)+'" class="sousmenu">');
        
        
        for(z=0;z<boucle;z++){
            elem=soustab[i][z].split("|");
            document.write('<div height="15" class="smenu">'+elem[0]+'</div>');
        }
        
        
        document.write('</div>');
        document.write('</div>');
        
    }
    
    document.write('</div>');
    
    document.onLoad=Init();
}


