function addEvent(obj,evType,fn,capt){
/* ajoute un événement sans écraser l'éxistant. */
if(obj.addEventListener)obj.addEventListener(evType,fn,false) /*  NS6+  */
else if(obj.attachEvent)obj.attachEvent("on"+evType,fn) /*  IE 5+  */
else {return false;} 
}
s_init=delai=0;
dynMenu = function(idMenu) {
if(!s_init){  /* éxécuté une seule fois */
var Menu=document.getElementById(idMenu);
var itm = Menu.getElementsByTagName("a");
for (var i=0; i < itm.length; i++) {if(itm[i].parentNode.getElementsByTagName("ul")[0]){with(itm[i])className+=!className?"sub":className!="sub"?" sub":""; /* lien vers sous-menu */
}
itm[i].onmouseover=itm[i].onfocus=function(){
voirSelect('');
ef(this.parentNode.parentNode)
var ul0=this.parentNode.getElementsByTagName("ul")[0];
if(ul0){
with(ul0)className+=!className?"montre":" montre"; /* montre le sous-menu. */
with(this)className+=!className?"trace":" trace"; /* trace le chemin du curseur */
}
}
itm[i].onmouseout=itm[i].onblur=function(){delai=setTimeout('eftout()',1000)};
if(!window.Event &! itm[i].parentNode.getElementsByTagName("ul")[0]){ /* bug haslayout IE */
li=document.createElement("li");itm[i].parentNode.appendChild(li);
with(li.style){position="absolute";left=-999+"em";
}
}
}
s_init=1
eftout=function(){ef(Menu);voirSelect('visible');
}
addEvent(document,'click',eftout)
}
}

function ef(ul) { /* cache les uls qui suivent cet ul. */
clearTimeout(delai);
var li=ul.getElementsByTagName('li');
for(i=0;i<li.length;i++){
var ul0=li[i].getElementsByTagName('ul')[0];
if(ul0)with(ul0)className=className.replace(/ montre|montre/,""); /* cache le sous-menu */
var a0=li[i].getElementsByTagName('A')[0];
if(a0)with(a0)className=className.replace(/ trace|trace/,"");  /* efface la trace */
}
}
/* bug ie corrigé : cache les <select> quand le menu est visible */
function voirSelect(v){
var elem=document.getElementsByTagName('select');
if(!window.Event){for(i=0;i<elem.length;i++)elem[i].style.visibility=v;
}
}
/* active le menu dynamique pour la souris */
addEvent(document,'mousemove',function(){dynMenu("menu")})
/* idem pour le clavier */
addEvent(document,'keydown',function(){dynMenu("menu")})

