у библиотек бывают, при назначении события, удобные опции
например в Ext есть параметр buffer: xxx милисекунд
если за это время было несколько событий mouseout, то вызовется только одно и можно закрывать меню или что-то другое
<script src="http://yandex.st/ext-core/3.1.0/ext-core.min.js"></script>
<div id="box" style="width: 100px; height: 100px; background: #cfc;"></div>
<script>
Ext.get("box").on('mouseout', function (event, el) {
alert('можно скрывать');
}, this, {buffer: 1000});
</script>