salve a tutti!
sto progettando un menu dinamico completamente in javascript.
appena il mouse si muove sopra un determinato div, viene creato una specie di menu a tendina; il problema è che appena sposto il mouse dal div il menu a tendina scompare siccome viene richiamato l'evento onmouseout riferito al div stesso.
ho pensato allora di verificare, nell'evento onmouseout riferito al div, se esiste il menu a tendina e soprattutto se il mouse ci è sopra! esiste un modo per intercettare l'evento?
non avendolo trovato ho cercato su internet le funzioni per rilevare la posizione del mouse e ho trovato clientx e clienty: il mio codice però non funziona correttamente: alcune volte si vanno a creare più copie del menu dinamico, l'una sovrapposta all'altra, o si vede senza scritte... insomma, questo è il codice:
codice:function check_dyn_menu_hover( elementID ) //viene passato l'id del menu dinamico { var checking= true; var cur_menu= window.document.getElementById( elementID ); if ( (event.clientX < (Math.floor(0.1*innerWidth)) || event.clientX > (Math.floor(0.1*innerWidth) + cur_menu.clientWidth))) checking= false; if (event.clientY > (30 + MAX_OPTION*30)) //MAX_OPTION è il numero di voci checking= false; return checking; }




Rispondi quotando