Ciao,
ho scritto una piccola funzione Javascript che al passaggio del mouse sopra un'area cliccabile di una mappa mi fa apparire un div che evidenzia i contorni dell'area cliccabile.
Questa la class CSS del div:
Questo un estratto del codiceCodice PHP:
.box
{
position:absolute;
border:1px solid #900;
color: #900;
display: none;
cursor: hand;
}
Le funzioni Javascript non fanno altro che calcolare opportunamente le coordinate del div e visualizzarlo, poi quando si toglie il mouse lo fanno nascondere.Codice PHP:
[img]700.jpg[/img]
<map name="mappa" id="mappa">
<area shape="rect" coords="160, 74, 224, 89" href="ordina.php" onmouseover="findElementPosition(img1, 0);" onmouseout="hideBox(0);">
<div class="box" style="{left:160; top:74; width:64; height:15}" id="box1"></div>
</area>
</map>
Con IE il box viene visualizzato correttamente e correttamente viene nascosto sull'onmouseout. Il problema si ha con FF: succede che quando vado sopra al DIV questo "flippa", cioè anche se rimango fermo col puntatore del mouse all'interno del div i contorni del div continuano a scomparire velocemente, come se continuasse a richiamare onmouseover seguito da onmouseout ogni millisecondo.
Qualcuno ha un suggerimento?
Se mi posiziono esattamente sul bordo del DIV il problema non si verifica. Forse bisognerebbe impostare qualche proprietà alla classe BOX in modo che abbia un qualche background che definisca bene che il DIV non sono solo i bordi, ma i bordi+l'interno. Il background però non dovrebbe nascondere l'immagine che sta sotto.
Ciao.