Я хочу, чтобы функция выполнялась один раз на mouseenter, а затем на mouseleave, я хотел бы, чтобы элемент возвращался в свое состояние.jQuery бесконечный цикл
Мой код создает бесконечный цикл. Мышь входит, и элемент переворачивается бесконечно, пока моя мышь не уйдет.
$(document).ready(function() {
var flipfunc = function() {
var elem = $(this);
if (!elem.data('flipped')) {
elem.flip({
direction: 'lr',
speed: 250,
onBefore: function() {
elem.html(elem.siblings('.sponsorData').html());
}
});
elem.data('flipped', true);
elem.addClass('sponsorFlipped');
//elem.unbind('mouseenter', flipfunc);
}
else {
elem.revertFlip();
// Unsetting the flag:
elem.data('flipped', false)
//elem.unbind('mouseleave', rflipfunc);
}
}
$('.sponsorFlip').bind('mouseenter', flipfunc);
//$('.sponsorFlipped').bind('mouseleave', rflipfunc);
});
Я пробовал много решения, но я не вижу, где вопрос ...
Используйте 'hover' вместо этого. Для этого это и есть. – mrtsherman
Можете ли вы создать jsfiddle? Трудно повторить то, что вы испытываете. –
@ mrtsherman Я пробовал, но я тоже получаю петлю. Я также попытался выплескивать код другим в зависание ({enter}, {leave}), но я не справился. – Samuel