Io utilizzo questo codice:
codice:
sfHover = function() {
var sfEls = document.getElementsByTagName("p");
for (var i=0; i<sfEls.length; i++) {
sfEls[i].onmouseover=function() {
this.className+=" sfhover";
}
sfEls[i].onmouseout=function() {
this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
}
}
var sfEls = document.getElementById("nav").getElementsByTagName("li");
for (var i=0; i<sfEls.length; i++) {
sfEls[i].onmouseover=function() {
this.className+=" sfhover";
}
sfEls[i].onmouseout=function() {
this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
}
}
}
if (window.attachEvent) window.attachEvent("onload", sfHover);
Il primo esempio serve per gestire l'hover su un tag generico, mentre il secondo per un tag all'interno di un "id" specifico.
Ovviamente devi duplicare il pezzo per ogni tag che vuoi gestire.
Poi è necessario duplicare le dichiarazioni nel CSS per ogni coppia tag/hover trasformandolo in classe sfhover:
codice:
#nav li:hover ul { left: auto; }
#nav li.sfhover ul { left: auto; }