2013-04-29 2 views
2

1.) Если я нажму на изображение, все «Темы» (ul) должны закрыть и изменить их класс. Мне удалось изменить класс, но они не будут закрыты.jQuery slideToggle ul при нажатии на родительский li

Я думал:

$("#nav ul li.open").slideToggle('fast'); 

будет работать в этой функции:

$("#home").click(function (e) { 
    // Prevent the default action of the event 
    e.preventDefault(); 
    var linkHref = this.id + '.html'; 
    $("#content").load(linkHref); 
    $("#nav a.active").toggleClass('inactive active'); 
    $("#nav ul li.open").slideToggle('fast');   //slideToggle here 
    $("#nav li.open").toggleClass('closed open'); 
}); 

, но это не работает.

2.) Если я открою тему 1 и Subtopic 2, а затем нажмите Тема 2, тема 1 будет закрыта. Но когда я снова нажимаю на тему 1, Subtopic 2 все еще открыт. Таким образом, вложенная ul не будет закрыта.

3.) Я хочу покрасить тему и субтипный текст, когда ссылка активна (имеет класс .active).

FIDDLE

ответ

0

Что вам не хватает, чтобы скрыть детей, так что вы должны заменить $("#nav ul li.open").slideToggle('fast'); с $("#nav li ul").css('display',"none");. Протестировано в вашей скрипке и работает

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