В Firefox 5 jQuery slideDown() запускает цепочку анимации в дочерних элементах списка
Я создал выпадающее меню с помощью jQuery. Поэтому, когда я наводю курсор на кнопку, она скользит вниз по меню. Теперь, если я вытащу мышь из меню и верну ее, прежде чем она сдвинется вверх (в меню много пунктов, поэтому у меня достаточно времени, чтобы вернуть мышь обратно в меню) над выпадающим меню, она запускает цепочку Функции slideDown() и slideUp() не прекращаются до тех пор, пока я не переместлю мышь меню или не вернусь к кнопке. Ниже мой код JQuery:
$(function() {
$('#slideshow1').cycle();
$('#projects').mouseenter(function(){
$('#dd_Projects').slideDown();
});
$('#projects').mouseleave(function(){
$('#dd_Projects').slideUp();
});
});
Я искал онлайн, и я уже пробовал e.stopPropagation(), но он не работает.
Это происходит только в Firefox, все отлично работает в IE7, IE8, Safari, Chrome, не уверен насчет других версий Firefox.
пожалуйста, порекомендуйте
1 ответ
Функция остановки jQuery должна делать то, что вы после. Пройти в true
в качестве первого параметра для очистки очереди анимации. Вы, вероятно, не хотите переходить к концу анимации, поэтому не передавайте true в качестве второго параметра.
Так что-то вроде:
$('#dd_Projects').stop(true).slideDown('fast', function(){
$(this).css('height', '');
});
а также
$('#dd_Projects').stop(true).slideUp('fast', function(){
$(this).css('height', '');
});
вместо ваших текущих слайдов нужно сделать свое дело.