Tengo dos animaciones separadas que se están produciendo, una se activa en mouseenter
y la otra en click
. El problema es que cuando ambos se activan, crea una animación de saltos.jQuery: Al hacer clic, evitar el evento de mouseenter
Se puede ver lo que quiero decir aquí: JSFiddle
¿Es posible evitar que el evento ocurra mouseenter
si se activa el evento click
?
Javascript
$('header h1').mouseenter(function() {
$('header:not(.open)').delay(500).animate({
'padding-bottom': '40px'
}, 150, function() {
//function complete
});
});
$('header h1').mouseleave(function() {
$('header:not(.open)').animate({
'padding-bottom': '20px'
}, 150, function() {
//function complete
});
});
$('header h1').click(function() {
if ($('header').hasClass('open')) {
$('header p').fadeOut(100);
$('header').removeClass('open').animate({
'padding-bottom': '20px'
}, 300, function() {
//animation complete
});
}
else {
$('header').addClass('open').animate({
'padding-bottom': '150px'
}, 300, function() {
$('header p').fadeIn();
});
}
});
¿Por qué necesita para retrasar durante medio segundo? – mayhewr
@mayhewr Agregué la demora para enfatizar el problema. Pero todavía existe independientemente. – colindunn
Parece que podría funcionar el desvinculación? http://api.jquery.com/unbind/ – colindunn