2012-04-28 2 views
0

Я создаю сценарий для своего подменю в навигации. Когда я открою подменю. Подменю показывают и когда я нажимаю. Подменю закрыто шириной задержка 300.Открыть другое подменю закрытое подменю

Но у меня проблема в скрипте. Навигация имеет 8 подменю. Когда я наводил курсор на первое подменю. Это подменю открыто. Когда я навешиваю над вторым подменю. Тогда у меня есть два подменю.

Когда я открываю новое подменю. И есть еще одно подменю. Остальная часть должна немедленно закрыть. Как я могу сделать?

Большое спасибо!

Это мой сценарий:

$('.nav-main .container li').hover(function() { 
    if ($(this).find('.submenu').length > 0) { 
     $(this).addClass("hover"); 
     $(this).find('.submenu').show(); 
    } 
}, function() { 
    var object = $(this); 
    setTimeout(function() 
    { 
     $(object).find('.submenu').hide(); 
     $(object).removeClass("hover"); 
    }, 300); 
}); 

ответ

0

Перед показом подменю можно скрыть все подменю первого;

if ($(this).find('.submenu').length > 0) { 
     $(this).addClass("hover"); 
     $('.submenu').hide();//Here 
     $(this).find('.submenu').show(); 
    } 
+0

Спасибо вам за помощь! –

+0

Не могли бы вы подтвердить результат, если он работал физически :-) –