首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >展开目录的其余部分以显示完整内容(带按钮的onClick)

展开目录的其余部分以显示完整内容(带按钮的onClick)
EN

Stack Overflow用户
提问于 2019-03-27 08:15:27
回答 1查看 73关注 0票数 0

我正在尝试创建一个div,它在折叠的表单中包含一些内容,在单击按钮时展开,显示额外的内容(div的完整表单),并在最后再次提供一个按钮来关闭展开的框。

这就是我的东西

代码语言:javascript
复制
var coll = document.getElementsByClassName("collapsible");    for (i = 0; i < coll.length; i++) {
  coll[i].addEventListener("click", function() {
    this.classList.toggle("active");
    var content = this.nextElementSibling;

    if (content.style.maxHeight){
      content.style.maxHeight = null;
    } else {
      content.style.maxHeight = content.scrollHeight + "px";
    } 
  });
}
代码语言:javascript
复制
.collapsible {
  background-color: red;
  color: black;
  cursor: pointer;
  padding: 18px;
  width: 100%;
  border: none;
  text-align: left;
  outline: none;
  font-size: 15px;
}


.collapsible:after {
  content: '+';
  color: black;
  float: right;
  margin-left: 5px;
}



.active:after {
  content: "-";
}
.content {
  padding: 0 18px;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0s ease-out;
  text-align: left;
  font-size: 16px;
  line-height: 20px;
  margin-bottom: 15px;
}
代码语言:javascript
复制
<button class="collapsible">Title 1</button>
<div class="content">
  Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
</div>



<button class="collapsible">Title 2 <br>   Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</button>
<div class="content">
  Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
</div>

示例中的第二个div是我试图解释我正在尝试实现的目标,即使在技术上是错误的,这对我来说也是足够好的(因为不会有bg颜色,所以没有人会看到实际的div结构),但是折叠按钮最终通过出现在它的中间暴露了混乱。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55367987

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档