我编写了一个 Javascript for 循环来自动隐藏和显示网站上的某些内容,但由于某种原因,该变量在循环结束时取最高值...
所以
for (var i = 1; i <= 5; i++) {
$('.views-row-' + i + ' .faq_answer').hide();
$('.views-row-' + i + ' .faq_more').click(function () {
$('.views-row-' + i + ' .faq_answer').slideToggle();
});
}
所有 .views-row .faq_answer
元素都会按其应有的方式隐藏,并且所有 .views-row .faq_more
都有一个点击处理程序。
但由于某种原因, slideToggle
行仅适用于类 views-row-6
的行(不存在)...
因此函数中的 i 变量并不适用于循环的所有值...
如何使其适用于所有 view-row-x
?
最佳答案
您应该在点击回调中使用 $(this) 引用您的元素。这里,i 将等于 i 的最后一个值。
$('.views-row-'+ i + ' .faq_more').click(function(){
$(this).slideToggle();
});
关于javascript - JS for循环中的变量取最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14753476/