我看到了很多例子并试图效仿,但没有一个能奏效。所以我终于把它们贴在这里了。我无法理解我做错了什么。
有一个常见问题解答列表,其中包含答案的显示/隐藏功能。
这是我没有应用闭包的代码(这当然只针对最后一个问题)
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]();
}
任何帮助,将不胜感激。谢谢你。