Ваша начальная функция работает нормально до тех пор, пока указатель мыши не перетянется в течение второго (или третьего) div "mover". Когда это произойдет, вы можете получить несколько анимаций в очереди, например:
mover1.hover-over()
mover2.hover-over()
По умолчанию вызов stop
прекращает только текущую анимацию - анимация, инициированная для первого двигателя, а не анимация, поставленная в очередь для второго двигателя.
Вы можете запретить запуск дополнительных анимаций, очистив очередь анимации при вызове stop
, который принимает необязательный параметр clearQueue
:
$(document).ready(function(){
$("div.mover").hover(function () {
$("div.hide1").fadeTo("slow", 0.33).fadeTo("slow", 1);
}, function(){
// Added stop parameters and added an additional fadeTo,
// to make sure we get back to 100% opacity.
$("div.hide1").stop(true).fadeTo("slow", 1);
});
});