2017-02-19 2 views
-1

Ich habe ein Menü, das, wenn Sie auf ein übergeordnetes Menü klicken, zeigt es ein Untermenü ... das funktioniert gut, wie Sie here sehen können. Ich habe auch eine aktive Klasse, die von einem kleinen jquery Skript gesteuert wird, aber mein Problem ist, dass, wenn ich einen aktiven Link klicke, der aktive Zustand stillgelegt wird. Wenn Sie zum Beispiel auf Menü Fünf klicken, wechselt der Pfeil und ein Aktv-Status wird angewendet. Wenn Sie jedoch erneut auf das Menü klicken, verschwindet das Untermenü und der aktive Status wird weiterhin angewendet.Entfernen aktive Klasse von übergeordneten Menü Link

hier ist der aktive Zustand jquery Schnipsel:

// create active class when menu is active 
    var selector = '.james'; 

    $(selector).on('click', function(){ 
     $(selector).removeClass('active'); 
     $(this).addClass('active'); 
    }); 

Antwort

1

Sie müssen die active Klasse wechseln, und Sie müssen auch die zur Zeit angeklickt Element auszuschließen, wenn die Klasse zu entfernen (so es gilt nur für die anderen Menüoptionen)

var selector = '.james'; 
$(selector).on('click', function(){ 
    $(selector).not(this).removeClass('active'); 
    $(this).toggleClass('active'); 
}); 
+0

brilliant, vielen Dank für Ihre Hilfe –

Verwandte Themen