我从w3cschool的例子中构建了一个手风琴菜单。该示例是用纯javascript编写的。 我想重写它在jQuery中,但它不起作用。 这是原文:jQuery选择vs纯javascript
var acc = document.getElementsByClassName("accordion");
var i;
for (i = 0; i < acc.length; i++) {
acc[i].onclick = function() {
this.classList.toggle("active");
this.nextElementSibling.classList.toggle("show");
}
}
,这是我的版本jQuery中:
$(".accordion").each(function (index) {
$(this).click(function() {
$(this).toggleClass("active");
$(this).next().toggleClass("show");
});
});
项目选中展开,但打开的项目不会关闭。 我在jQuery中错了什么地方?
谢谢!
只是一个提示,声明变量一样,是荒谬的。我个人将变量定义为null,它们将它们纠正为我希望它们与声明分离的位置,但在您的情况下,我只会执行''var acc = document.getElementsById('accordion'),i = null;'' 。 – Crowes
@JoshCrowe你从哪里得到这个想法? 'var i;'完全有效并将'i'初始化为'undefined'。 – Boldewyn
@JoshCrowe请不要给错误的提示。 –