2017-01-22 2 views
2

У меня есть 3 кнопки навигации, которые, когда наводили курсор, открывали меню под ним. Я хочу добавить таймер, когда мышь покидает кнопку, поэтому сразу после открытия не закрывается. Тогда это немного испугается. Это мой стартовый код в JQuery, для открытия в раскрывающемся менюДобавление таймаута нарушает все

$('.info').hover(function() { 
    $('.d-skills').show(500); 
    $('.d-info').hide(500); 
    $('.d-exp').hide(500); 
}); 

Если добавить этот код в нем ломает и ничего не работает

function(){ t = setTimeout(function(){$('.d-info').hide(500)}, 500;) 
} 

Кроме того, я добавить

var t; 

в самом начале, и я разделяю функции с помощью «,».

«d-инфо» класс для раскрывающегося меню и «Информация» кнопка класс

ответ

0

Вы можете использовать функцию handlerOut для hover.

Ниже приведен простой фрагмент, который демонстрирует это и скрывает разделы после задержки 1,5 секунды.

$('.info').hover(function() { 
 
    $('.d-sections').show(500); 
 
}, function() { 
 
    setTimeout(function() { 
 
    $('.d-sections').hide(500); 
 
    }, 1500); 
 
});
.d-sections { 
 
    display: none; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="info"> 
 
    Hover here for more Information! 
 
    <div class="d-sections"> 
 
     <div class="d-skills"> 
 
     The D Skills section! 
 
     </div> 
 
     <div class="d-info"> 
 
     The D Info section! 
 
     </div> 
 
     <div class="d-exp"> 
 
     The D Exp section! 
 
     </div> 
 
    </div> 
 
</div>

https://jsfiddle.net/32bekom9/1/

+0

Я хотел бы отменить, что .hide если курсор возвращается на кнопку, а также. И это также иногда вырывается и закрывается мгновенно, когда мышь уходит. Я считаю, что отмену .hide исправит это. –

+0

@Mali_Mrav - вам нужно использовать '.stop()', который отменил бы анимацию. –

+0

Я попытался, но это не сработало, и, как я понял .stop(), он просто отменяет анимацию, если она находится в середине исполнения. Я хотел бы иметь, что .hide() вообще не происходит, если мышь возвращается в div. –

Смежные вопросы