Javascript 瞄准手风琴中的切换按钮

Javascript 瞄准手风琴中的切换按钮,javascript,html,css,ratchet-2,Javascript,Html,Css,Ratchet 2,我试图将我的开/关切换控件作为目标,该控件嵌入在一个链接中,当你点击手风琴时,它也会切换手风琴。两个开关都可以工作,但我希望它们彼此独立工作。打开/关闭开关不应切换手风琴。我使用棘轮作为框架,如果这意味着什么的话 厨房灯 Lorem ipsum dolor sit amet,奉献精英。魁,这是我的工作。Amet,beatae解释一下如何使用驱虫剂!工作经验,实习经历 li.手风琴{ 游标:指针; 填充:18px; 宽度:100%; 边界:无; 文本对齐:左对齐; 大纲:无; 字体大小:15

我试图将我的开/关切换控件作为目标,该控件嵌入在一个链接中,当你点击手风琴时,它也会切换手风琴。两个开关都可以工作,但我希望它们彼此独立工作。打开/关闭开关不应切换手风琴。我使用棘轮作为框架,如果这意味着什么的话

  • 厨房灯
  • Lorem ipsum dolor sit amet,奉献精英。魁,这是我的工作。Amet,beatae解释一下如何使用驱虫剂!工作经验,实习经历

    li.手风琴{
    游标:指针;
    填充:18px;
    宽度:100%;
    边界:无;
    文本对齐:左对齐;
    大纲:无;
    字体大小:15px;
    过渡:0.4s;
    }
    我喜欢手风琴,
    按钮。手风琴:悬停{
    背景色:#ddd;
    }
    李安:以后{
    内容:“\002B”;
    颜色:#777;
    字体大小:粗体;
    浮动:对;
    左边距:5px;
    }
    分区小组{
    填充:0 18px;
    背景色:白色;
    最大高度:0;
    溢出:隐藏;
    过渡段:最大高度0.2s放松;
    }
    分区开关{
    z指数:1;
    }
    var acc=document.getElementsByClassName(“accordion”);
    var i;
    对于(i=0;i
    我有你的功能按钮

    我已经更新了一些html代码

    <li class="table-view-cell toggle-handle accordion ">
      Kitchen Light
      <div class="toggle toggle-handle accordion">
        <div class="toggle-handle "></div>
      </div>
      <!-- toggle -->
    </li>
    
  • 厨房灯

  • 使用JavaScript处理目标元素的单击事件。真的是这样。只需使用该方法。

    缺少的关键部分是event.stopPropagation();因为这样可以防止切换也触发手风琴

    var acc=document.getElementsByClassName(“accordion”);
    var i;
    对于(i=0;i
    li.手风琴{
    /*将按钮标记更改为li标记*/
    游标:指针;
    填充:18px;
    宽度:100%;
    边界:无;
    文本对齐:左对齐;
    大纲:无;
    字体大小:15px;
    过渡:0.4s;
    }
    我喜欢手风琴,
    按钮。手风琴:悬停{
    背景色:#ddd;
    }
    李安:以后{
    内容:“\002B”;
    颜色:#777;
    字体大小:粗体;
    浮动:对;
    左边距:5px;
    }
    分区小组{
    填充:0 18px;
    背景色:白色;
    最大高度:0;
    溢出:隐藏;
    过渡段:最大高度0.2s放松;
    }
    分区开关{
    z指数:1;
    }
    
    
  • 厨房灯
  • Lorem ipsum dolor sit amet,奉献精英。魁,这是我的工作。Amet,beatae解释一下如何使用驱虫剂!工作经验,实习经历


    太棒了!这正是我想要它做的。谢谢
     li.accordion {
       curser: pointer;
       padding: 18px;
       width: 100%;
       border: none;
       text-align: left;
       outline: none;
       font-size: 15px;
       transition: 0.4s;
       }
    
     li.accordion.active,
     button.accordion:hover {
     background-color: #ddd;
     }
    
    li.accordian:after {
      content: '\002B';
      color: #777;
      font-weight: bold;
      float: right;
      margin-left: 5px;
      }
    
     div.panel {
       padding: 0 18px;
       background-color: white;
       max-height: 0;
       overflow: hidden;
       transition: max-height 0.2s ease-out;
       }
    
     div.toggle {
      z-index: 1;
      }
    
    
    
    
    var acc = document.getElementsByClassName("accordion");
    var i;
    
    for (i = 0; i < acc.length; i++) {
      acc[i].onclick = function() {
         this.classList.toggle("active");
         var panel = this.nextElementSibling;
         if (panel.style.maxHeight) {
         panel.style.maxHeight = null;
         } else {
            panel.style.maxHeight = panel.scrollHeight + 'px';
         }
      }
    } //end function
    
    <li class="table-view-cell toggle-handle accordion ">
      Kitchen Light
      <div class="toggle toggle-handle accordion">
        <div class="toggle-handle "></div>
      </div>
      <!-- toggle -->
    </li>