⊗jsPrStAcc 14 of 62 menu

Akordeon dalam JavaScript

Sekarang mari kita implementasikan akordeon. Ia mirip dengan tab yang dibalik secara horizontal. Namun, dalam akordeon, tab yang aktif dapat ditutup jika tautan aktif ditekan.

Berikut adalah contohnya:

Pelajari juga markup yang akan kita gunakan untuk menyelesaikan tugas ini:

<div id="parent"> <div class="tab active"> <div class="link"> <a href="#" >tab 1</a> </div> <div class="text"> teks tab 1 </div> </div> <div class="tab"> <div class="link"> <a href="#" >tab 2</a> </div> <div class="text"> teks tab 2 </div> </div> <div class="tab"> <div class="link"> <a href="#" >tab 3</a> </div> <div class="text"> teks tab 3 </div> </div> </div> #parent { margin: 0 auto; width: 400px; } .tab { margin-bottom: 10px; } .tab .link a { display: block; padding: 10px; color: black; text-decoration: none; text-align: center; background: #f8f8f8; border: 1px solid gray; } .tab .link:hover a { background: #f2f2f2; } .tab:not(.active) .text { display: none; } .tab .text { border: 1px dashed gray; border-top: none; padding: 10px; height: 300px; }

Diskusi

Secara teknis, kode HTML akordeon lebih mudah daripada kode tab: di dalamnya, tautan terletak langsung di atas spoiler yang mereka buka dan tutup. Selain itu, kelas active dalam markup kita diberikan kepada induk bersama dari tautan dan spoiler.

Ini berarti bahwa ketika tautan ditekan, kita hanya perlu menonaktifkan tab lama dan mengaktifkan tab baru. Untuk menonaktifkan tab lama, kita perlu mencari tab dengan kelas active dan menghapus kelas tersebut darinya.

Untuk mengaktifkan tab baru, kita perlu berdasarkan klik pada tautan, temukan induk tab dari tautan ini dan berikan dia kelas active. Secara teknis pencarian seperti itu dapat dilakukan seperti ini: cukup temukan induk terdekat dari tautan, yang memiliki kelas tab.

Salin kode HTML dan CSS yang diberikan ke editor Anda. Implementasikan akordeon sesuai dengan algoritma yang dijelaskan.

Indonesia
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan cookie untuk operasi situs, analitik, dan personalisasi. Pemrosesan data dilakukan sesuai dengan Kebijakan Privasi.
terima semua atur tolak