Я не особо разбираюсь в javascript / jquery, но то, что я пытаюсь сделать, это просто добавить тайм-аут к функции mouseenter
, что я не могу делать драмами, но я также хочу очистить тайм-аут, если пользователь покидает элемент до истечения времени ожидания - в основном, чтобы пропустить курсор над элементом запуска.
Код ниже (mouseenter работает, mouseleave работает, но не сбрасывает время ожидания):
$(document).ready(function() {
var timeout;
$('#mainMenu ul li').mouseenter(function() {
var dropTab = 'ul.' + this.id + 'Dropdown';
timeout = setTimeout( function(){
$(dropTab).slideToggle("fast") }, 500
);
});
$('#mainMenu ul li').mouseleave(function() {
clearTimeout(timeout);
var dropTab = 'ul.' + this.id + 'Dropdown';
setTimeout( function(){
$(dropTab).slideToggle("fast") }, 250
);
});
});