Может ли кто-нибудь помочь мне с этим?
В основном, я хочу, чтобы скрипт добавлял "активный" класс в "li" при щелчке и удалял его по другому клику - ну, он добавляет класс и автоматически удаляет его :-) Я был бы очень признателен за любое решение.
PS. Я рассмотрел другие вопросы, касающиеся этой проблемы, но я не нашел ответа, который бы мне помог.
jQuery(document).ready(function() {
jQuery('li').each(function() {
var faq = jQuery(this), state = true, answer = faq.next('.answer').hide().css('height','auto').slideUp();
faq.click(function() {
state = !state;
answer.slideToggle(state);
faq.addClass('active',state);
if(jQuery("li").hasClass("active")) {
jQuery(".active").remove(); }
});
});
});
jQuery(".active").removeClass(); }
исправляет половину проблемы
это на самом деле .removeClass(), что вы должны попробовать.. !!
jQuery(document).ready(function() {
jQuery('li').each(function() {
var faq = jQuery(this), state = true, answer = faq.next('.answer').hide().css('height','auto').slideUp();
faq.click(function() {
state = !state;
answer.slideToggle(state);
faq.addClass('active',state);
if(jQuery("li").hasClass("active")) {
jQuery(".active").removeClass(); }
});
});
});
ИЛИ
используя .toggleClass()
использование
jQuery(document).ready(function() {
jQuery('li').each(function() {
var faq = jQuery(this), state = true, answer = faq.next('.answer').hide().css('height','auto').slideUp();
faq.click(function() {
state = !state;
answer.slideToggle(state);
faq.addClass('active',state);
$( this ).toggleClass( "active" );
});
});
});
Обновить
обновлено на основе комментария @AndyAndy:
представь это
имеет значок "+", и при щелчке он меняется на значок "-" и появляется ответ.
jQuery(document).ready(function() {
jQuery('li').each(function() {
var faq = jQuery(this), answer = faq.next('.answer').hide().css('height','auto').slideUp();
faq.click(function() {
answer.slideToggle('.active');
if($(this).text()=='+')
{
$(this).text('-');
}
else{
$(this).text('+');
}
});
});
});
.addClass
не принимает второй параметр .. вы должны думать о.toggleClass