2013-06-19 1 views
0

Эта функция отражает и конфликтует со всеми суб-и суб (а) тегами привязки, поэтому субэкранированные метки также получают активный класс, который не является необходимо, помогите мне ....Эта функция отражает и конфликтует со всеми сублитровыми и суб (а) тегами привязки

jQuery(".left_navigation ul li").live('click', function(){ 
    jQuery(".sub_nav").slideUp("fast"); 
    jQuery(".left_navigation ul li").removeClass("active"); 
    jQuery(this).find(".sub_nav").slideToggle("slow"); 
    jQuery(this).addClass("active"); 
    jQuery(".left_navigation ul li a").removeClass("active"); 
    jQuery(this).find("a").addClass("active"); 
}); 

ответ

0

при условии, что вам нужно нажать на только li, а не для своего ребенка a.

вы можете сделать это

jQuery(".left_navigation ul li").live('click', function (e){ 
    if (e.target == this){ //<---make it work for just li and not a 
    jQuery(".sub_nav").slideUp("fast"); 
    jQuery(".left_navigation ul li").removeClass("active"); 
    jQuery(this).find(".sub_nav").slideToggle("slow"); 
    jQuery(this).addClass("active"); 
    jQuery(".left_navigation ul li a").removeClass("active"); 
    jQuery(this).find("a").addClass("active"); 
    } 
}); 

и я предполагаю, что вы используете старую версию JQuery, так live() устарели и удалены в новой версии. поэтому, в случае если вы используете последнюю версию, его лучше использовать on() вместо live()

+0

ооо ... да спасибо – Ajoshi

0

Попробуйте

jQuery(".left_navigation ul li li").live('click', function (event){ 
    event.stopImmediatePropagation(); 
}) 
jQuery(".left_navigation ul li").live('click', function(){ 
    jQuery(".sub_nav").slideUp("fast"); 
    jQuery(".left_navigation ul li").removeClass("active"); 
    jQuery(this).find(".sub_nav").slideToggle("slow"); 
    jQuery(this).addClass("active"); 
    jQuery(".left_navigation ul li a").removeClass("active"); 
    jQuery(this).children("a").addClass("active"); 
}); 
+0

да решен «а», но когда я нажав на sub_nav Li затем slideToggle работает, я думаю, что он работает только с родительским li, ни sub_nav li ... – Ajoshi

+0

@ user2458582 попробуйте обновление –

+0

wwooooo .... Он работает Perfect ... thanks :) – Ajoshi

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