【发布时间】:2017-11-20 23:24:27
【问题描述】:
我已经整理了一个带有手风琴功能的页面,所以页面不会太长,现在当我想打印页面时,它只会打印打开的部分,我希望有一个全部打开按钮或全部打印已实现按钮,非常感谢任何帮助!
有人可以帮忙吗?
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";
}
}
}
button.accordion {
background-color: #13294b;
border: 2px solid #59cbe8;
border-radius: 0px 10px 0px 10px;
box-shadow: 7px 7px 5px #cccccc;
color: #fff;
cursor: pointer;
padding: 10px 15px 10px 15px;
margin: 4px 0px 7px 0px;
width: 100%;
font-size: 18px;
transition: 0.4s;
outline: none;
text-align: left;
}
button.accordion.active,
button.accordion:hover {
background-color: #1f447b;
}
button.accordion:after {
content: '\002B';
color: #59cbe8;
font-weight: bold;
float: right;
}
button.accordion.active:after {
content: "\2212";
}
div.panel {
padding: 0 18px;
background-color: white;
max-height: 0;
overflow: hidden;
transition: max-height 0.2s ease-out;
}
<button class="accordion">Title 1</button>
<div class="panel">content</div>
<button class="accordion">Title 2</button>
<div class="panel">content</div>
【问题讨论】:
-
只需添加一个“打印”按钮,单击该按钮时,将循环显示面板并将每个面板的
height设置为“打开”高度并调用window.print()方法。然后,触发活动面板的click事件,重置所有高度。 -
嗨,斯科特,感谢您提供的信息,对 javascript 有点陌生,您能指导我完成这个吗?干杯
-
你好,请帮忙
标签: javascript html css button accordion