49 lines
1.0 KiB
JavaScript
49 lines
1.0 KiB
JavaScript
jQuery(function($) {
|
|
var DELAY = 200;
|
|
|
|
$('.nav .menu-item.dropdown').each( function() {
|
|
var $dropdown = $(this);
|
|
var menuVisible = false, currentTimeout = -1;
|
|
|
|
var $link = $dropdown.children('a');
|
|
var $hoverContents = $dropdown.children('ul.dropdown-menu');
|
|
|
|
var showMenu = function() {
|
|
if (!menuVisible) {
|
|
menuVisible = true;
|
|
$hoverContents.show();
|
|
$link.addClass('hover');
|
|
} else {
|
|
window.clearTimeout(currentTimeout);
|
|
}
|
|
}
|
|
|
|
var hideMenu = function() {
|
|
if (menuVisible) {
|
|
currentTimeout = window.setTimeout(function() {
|
|
menuVisible = false;
|
|
$hoverContents.hide();
|
|
$link.removeClass('hover');
|
|
}, DELAY);
|
|
}
|
|
}
|
|
|
|
$link.hover(function(e) {
|
|
// Hover in
|
|
showMenu();
|
|
}, function(e) {
|
|
// Hover out
|
|
hideMenu();
|
|
});
|
|
|
|
$hoverContents.hover(function(e) {
|
|
// Hover in
|
|
showMenu();
|
|
}, function(e) {
|
|
// Hover out
|
|
hideMenu();
|
|
});
|
|
|
|
});
|
|
});
|