Как остановить onMouseOver
При наведении на объект срабатывает событие onMouseOver которое вызывает функцию анимирование объекта. Все работает ну как сделать что бы при событии onMouseOut анимирование объекта прекращалось, другими словами как остановить выполнение функции.
|
Таймеру анимации присвоить уникальный id - который сбрасываем(clearTimeout(id) )по событию onMouseOut
Если анимация на jQuery, то есть специальный метод stop( clearQueue, gotoEnd ) |
Цитата:
может нужно выходить из обработчика события? |
<div id="MyDiv" style="width:100px; height:100px; background:red; position:fixed" onmouseover="vel(true)" onmouseout="vel(false)"></div> function vel(a) { if(a) { var b = 0; my = setInterval(function() { document.getElementById('MyDiv').style.marginLeft = b+'px'; b++; },100) } else { clearInterval(my); } } При наведении, div будет двигаться вправо. При отведении - будет прекращать своё движение. |
Спасибо всем, попробую все варианты.
|
Часовой пояс GMT +3, время: 05:25. |