Я видел много примеров и пытался следовать, но никто из них не работал. Поэтому я, наконец, публикую их здесь. Я не понимаю, что я делаю неправильно.Закрытие JavaScript onclick
Существует список вопросов и ответов на часто задаваемые вопросы с функцией show/hide для ответов.
Вот мой код без применения закрытия (только это цели последний вопрос, конечно)
for(var i = 1; i <= faqCount; i++) {
question = '#' + i + ' .faq_question';
answer = '#' + i + ' .faq_answer';
$(question).click(function() {
$(answer).toggle();
$(question).toggleClass('down');
});
}
Но, глядя на других примерах, которые я пытался это сделать, но не получилось:
var funcs = [];
function createfunc(i) {
return function() {
question = '#' + i + ' .faq_question';
answer = '#' + i + ' .faq_answer';
$(question).click(function() {
$(answer).toggle();
$(question).toggleClass('down');
});
};
}
for (var i = 0; i < faqCount; i++) {
funcs[i] = createfunc(i);
}
for (var j = 1; j < faqCount; j++) {
funcs[j]();
}
Любая помощь будет оценена по достоинству. Спасибо.
Вы * действительно * не должны иметь 2 элемента с одинаковым идентификатором и не должны иметь идентификаторы, начинающиеся с (или) номеров. –
У вас есть вопрос № 0? – awm
Также было бы проще связать с '$ ('. Faq_question')' и '$ ('. Faq_answer')' и пропустить цикл 'for'. – Ishmael