如何在单击另一个手风琴时自动关闭Javascript手风琴

如何在单击另一个手风琴时自动关闭Javascript手风琴,javascript,Javascript,我正在设计一个网站,里面有几个手风琴。基本上,手风琴会显示颜色的缩略图版本,您可以单击它们来更改特定元素的颜色。但是,如果单击一个手风琴,然后单击另一个手风琴,则颜色重叠。我试图使它在点击另一个手风琴时,自动关闭之前打开的手风琴。代码如下: var acc = document.getElementsByClassName("accordion"); var i; for (i = 0; i < acc.length; i++) { acc[i].onclick = function

我正在设计一个网站,里面有几个手风琴。基本上,手风琴会显示颜色的缩略图版本,您可以单击它们来更改特定元素的颜色。但是,如果单击一个手风琴,然后单击另一个手风琴,则颜色重叠。我试图使它在点击另一个手风琴时,自动关闭之前打开的手风琴。代码如下:

var acc = document.getElementsByClassName("accordion");
var i;

for (i = 0; i < acc.length; i++) {
  acc[i].onclick = function() {
    /* Toggle between adding and removing the "active" class,
    to highlight the button that controls the panel */
    this.classList.toggle("active");

    /* Toggle between hiding and showing the active panel */
    var panel = this.nextElementSibling;
    if (panel.style.display === "block") {
      panel.style.display = "none";
    } else {
      panel.style.display = "block";
      $(".accordion, .big-accordion").accordion({
        event: "mouseover"
      });
      $(".accordion .ui-accordion-header a").css({
        padding: "1px 1px 1px 30px"
      });
    }
  }
}
var acc=document.getElementsByClassName(“accordion”);
var i;
对于(i=0;i

有什么想法吗?

关闭所有手风琴,然后打开单击的手风琴。在将
活动的
类应用于新打开的手风琴之前,选择当前活动的手风琴并关闭:
$(“.accordion.active”).closeIt()
。编辑:我不知道如何关闭你的手风琴,所以我为它编了一个函数名,但我希望你能明白。我还要检查以确保新选择的也不是当前选择的。