2017-12-19 4 views
0

Hallo ich einen Zusammenbruch all meinem Akkordeon hinzuzufügen habe versucht, aber kann nicht scheinen, um es herauszufinden .. Dies ist, was ich habe mit: https://www.w3schools.com/howto/howto_js_accordion.aspHinzufügen eines Collapse - Alle erweitern zu einem Akkordeon

Ich habe mich umgesehen, aber es scheint, dass dieses Akkordeon anders ist als die meisten anderen, also wäre jede Hilfe sehr nett.

Hier ist mein Code:

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

for (i = 0; i < acc.length; i++) { 
    acc[i].addEventListener("click", function() { 
    this.classList.toggle("active"); 
    var panel = this.nextElementSibling; 
    if (panel.style.maxHeight){ 
     panel.style.maxHeight = null; 
    } else { 
     panel.style.maxHeight = panel.scrollHeight + "px"; 
    } 
    }); 
} 
</script> 

CSS

.panel { 
    max-height: 0; 
    overflow: hidden; 
    transition: max-height 0.2s ease-in-out; 
} 

HTML

<article class="accordion"> 
    <div class="info" id="more">Office 123456</div> 
    <div class="info" id="less">Exhibition</div> 
    <div class="info" id="less">2017</div> 
    <div class="info">Offset</div> 
    <div class="info">169 x 239 mm</div> 
</article> 
<div class="panel"> 
    <div class="autoplay"> 
    <div><img src="img/01.jpg" alt=""></div> 
    <div><img src="img/03.jpg" alt=""></div> 
    <div><img src="img/04.jpg" alt=""></div> 
    </div> 
+0

Wenn Sie den Link erneut besuchen, werden Sie sehen, dass Sie nicht alle css Code –

+0

Ich habe, obwohl ich nicht in diesem Beitrag enthalten .. Ich nach alle fragen, welche Art von js müsste ich hinzufügen, um in der Lage sein zu generieren Ein Alles-Einklappen-Button basierend auf dem, was ich bisher gemacht habe. Willst du damit sagen, dass die CSS mir hier helfen wird? –

Antwort

0

Es gibt viele Möglichkeiten, Akkordeon zu erreichen. Sie können dies beispielsweise mithilfe der Jquery-UI-Bibliothek tun.

jQuery UI collapsible demo link

Download Link: http://jqueryui.com/download/

Sie können zusammenklappbar Akkordeon erreichen Sie wie folgt vor:

Code:

<html lang="en"> 
<head> 
    <meta charset="utf-8"> 
    <meta name="viewport" content="width=device-width, initial-scale=1"> 
    <title>jQuery UI Accordion - Collapse content</title> 
    <link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css"> 
    <link rel="stylesheet" href="/resources/demos/style.css"> 
    <script src="https://code.jquery.com/jquery-1.12.4.js"></script> 
    <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script> 
    <script> 
    $(function() { 
    $("#accordion").accordion({ 
     collapsible: true 
    }); 
    }); 
    </script> 
</head> 
<body> 

<div id="accordion"> 
    <h3>Section 1</h3> 
    <div> 
    <p>Mauris mauris ante, blandit et, ultrices a, suscipit eget, quam. Integer ut neque. Vivamus nisi metus, molestie vel, gravida in, condimentum sit amet, nunc. Nam a nibh. Donec suscipit eros. Nam mi. Proin viverra leo ut odio. Curabitur malesuada. Vestibulum a velit eu ante scelerisque vulputate.</p> 
    </div> 
    <h3>Section 2</h3> 
    <div> 
    <p>Sed non urna. Donec et ante. Phasellus eu ligula. Vestibulum sit amet purus. Vivamus hendrerit, dolor at aliquet laoreet, mauris turpis porttitor velit, faucibus interdum tellus libero ac justo. Vivamus non quam. In suscipit faucibus urna. </p> 
    </div> 
    <h3>Section 3</h3> 
    <div> 
    <p>Nam enim risus, molestie et, porta ac, aliquam ac, risus. Quisque lobortis. Phasellus pellentesque purus in massa. Aenean in pede. Phasellus ac libero ac tellus pellentesque semper. Sed ac felis. Sed commodo, magna quis lacinia ornare, quam ante aliquam nisi, eu iaculis leo purus venenatis dui. </p> 
    <ul> 
     <li>List item one</li> 
     <li>List item two</li> 
     <li>List item three</li> 
    </ul> 
    </div> 
    <h3>Section 4</h3> 
    <div> 
    <p>Cras dictum. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Aenean lacinia mauris vel est. </p><p>Suspendisse eu nisl. Nullam ut libero. Integer dignissim consequat lectus. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. </p> 
    </div> 
</div> 


</body> 
</html> 
+0

Nun ja, ich habe das Beispiel schon einmal gesehen, aber ich sehe nicht, wie das hilft, da ich einen Knopf haben will, um den Zusammenbruch aller meiner Akkordeons zu aktivieren. Vorzugsweise auf Basis der js bereits geschrieben und in der W3-Link angezeigt. Oder empfiehlst du, ich fange neu an? –

0

Das ist es

<!DOCTYPE html> 
<html> 
<head> 

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> 

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap-theme.min.css"> 

<script src="https://code.jquery.com/jquery-1.12.4.js"></script> 

<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>  

<style> 
.accordion { 
    background-color: #eee; 
    color: #444; 
    cursor: pointer; 
    padding: 18px; 
    width: 100%; 
    border: none; 
    text-align: left; 
    outline: none; 
    font-size: 15px; 
    transition: 0.4s; 
} 

.active, .accordion:hover { 
    background-color: #ccc; 
} 

.accordion:after { 
    content: '\002B'; 
    color: #777; 
    font-weight: bold; 
    float: right; 
    margin-left: 5px; 
} 

.active:after { 
    content: "\2212"; 
} 

.panel { 
    padding: 0 18px; 
    background-color: white; 
    max-height: 0; 
    overflow: hidden; 
    transition: max-height 0.2s ease-out; 
    margin: 0; 
} 

.menu_content{ 
padding: 10px 18px; 
} 
</style> 

<script> 
$(document).ready(function(){ 
    $('.menu_content').click(function(){ 
     $(this).find('span').toggleClass('glyphicon glyphicon-menu-down').toggleClass('glyphicon glyphicon-menu-up'); 
    }); 
}); 
</script> 

</head> 
<body> 

<button class="btn-default btn-block menu_content" data-toggle="collapse" data-target="#menu_content"><h5 class="pull-left">Menu</h5><span class="glyphicon glyphicon-menu-down pull-right"></span></button> 

    <div id="menu_content" class="collapse"> 

     <button class="accordion">Section 1</button> 
      <div class="panel"> 
       <p>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.</p> 

      </div> 

     <button class="accordion">Section 2</button> 
      <div class="panel"> 
       <p>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.</p> 

      </div> 

     <button class="accordion">Section 3</button> 
      <div class="panel"> 
       <p>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.</p> 

      </div> 

    </div> 


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

for (i = 0; i < acc.length; i++) { 
    acc[i].addEventListener("click", function() { 
    this.classList.toggle("active"); 
    var panel = this.nextElementSibling; 
    if (panel.style.maxHeight){ 
     panel.style.maxHeight = null; 
    } else { 
     panel.style.maxHeight = panel.scrollHeight + "px"; 
    } 
    }); 
} 
</script> 

</body> 
</html> 
Verwandte Themen