⊗jsPrStAcc 14 of 62 menu

Ակորդեոն JavaScript-ով

Եկեք հիմա իրականացնենք ակորդեոն։ Այն նման է կողքի շրջված ներդիրներին։ Այս դեպքում ակորդեոնում կարող եք փակել ընթացիկ ներդիրը, եթե սեղմեք ակտիվ հղման վրա։

Ահա նմուշ.

Ուսումնասիրեք նաև վերմակը, որի վրա մենք կլուծենք խնդիրը.

<div id="parent"> <div class="tab active"> <div class="link"> <a href="#" >ներդիր 1</a> </div> <div class="text"> ներդիր 1-ի տեքստը </div> </div> <div class="tab"> <div class="link"> <a href="#" >ներդիր 2</a> </div> <div class="text"> ներդիր 2-ի տեքստը </div> </div> <div class="tab"> <div class="link"> <a href="#" >ներդիր 3</a> </div> <div class="text"> ներդիր 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; }

Քննարկում

Տեխնիկապես ակորդեոնի HTML կոդն ավելի հարմար է, քան ներդիրների կոդը. դրանում հղումները տեղակայված են անմիջականորեն իրենց բացվող և փակվող սփոյլերների վերևում։ Բացի այդ, մեր վերմակում active դասը տրվում է հղման և սփոյլերի ընդհանուր ծնողին։

Սա նշանակում է, որ հղման վրա սեղմելիս պարզապես անհրաժեշտ է ապաակտիվացնել հին ներդիրը և ակտիվացնել նորը։ Հին ներդիրը ապաակտիվացնելու համար անհրաժեշտ է գտնել active դաս ունեցող ներդիրը և հեռացնել դա նրանից։

Նոր ներդիրը ակտիվացնելու համար անհրաժեշտ է հղման վրա կլիկի ժամանակ գտնել այդ հղման ծնող ներդիրը և տալ նրան active դասը։ Տեխնիկապես նման որոնում կարելի է իրականացնել այսպես. պարզապես գտնել հղման ամենամոտ ծնողը, որն ունի tab դասը։

Պատճենեք ձեզ տրված HTML և CSS կոդերը։ Իրականացրեք ակորդեոնը համաձայն նկարագրված ալգորիթմի։

Հայերեն
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Մենք օգտագործում ենք cookie-ներ կայքի աշխատանքի, վերլուծության և անհատականացման համար։ Տվյալների մշակումը կատարվում է համաձայն Գաղտնիության քաղաքականության։
ընդունել բոլորը կարգավորել մերժել