Ez azért van, mert a mouseOut-nál a timeout elindul, és amikor elviszed, de rögtön visszaviszed az egeret, akkor lefut a mouseover display:block, de utána egy pillanat alatt lejár a timeout, így eltűnik. Azt mondjuk pontosan nem értem, hogy ha része, akkor mért mouseout-nak veszi, de lehet, hogy külön divként kezeli
A lényeg, hogy nekem úgy jónak tűnt, hogy az onmouseOver-nél az esetleg futó timeout-ot ki kell lőni így:
Kód:
<script>
var hideDivTimeout;
function hidediv(divId) {
hideDivTimeout = setTimeout ( function(){document.getElementById(divId).style.display = 'none';}, 1250);
}
function showdiv(divId) {
clearTimeout(hideDivTimeout);
document.getElementById(divId).style.display = 'block';
}
</script>
<div id="almafa" onmouseover="showdiv('kortefa')" onmouseout="hidediv('kortefa')" style="border:1px solid #000000;">
show kortefa
<div id="kortefa" style="display:none; border:1px solid #000000;"> Itt a kortefa </div>
</div>
EDIT: bocsi, bordert csak azért raktam rájuk, hogy lássam mi, merre, meddig..
Könyvjelzők