✨ UUTTA!
Maksuton tarkistuslista verkkosivujen saavutettavuuteen
UUTTA:
Maksuton tarkistuslista verkkosivujen saavutettavuuteen
UUTTA:
Maksuton tarkistuslista verkkosivujen saavutettavuuteen
Takaisin listaan

Varmista, että accordionit ovat näppäimistöllä käytettävissä

Accordion-elementtien tulisi käyttää ARIA-attribuuttia ilmoittamaan, onko osio avoinna vai suljettu, jotta ruudunlukijat ja muut apuvälineet voivat tulkita tilan oikein.

Merkitse tehdyksi

Yleinen tapa rakentaa accordion Webflow’ssa on käyttää trigger-elementtiä, joka on suora sisaruselementti sisältöelementille. Interaktio asetetaan trigger-elementtiin niin, että sisaruselementti näkyy, kun sitä klikataan.

Saavutettavuuden varmistamiseksi tulee myös lisätä ARIA-attribuutit, jotka vaihtuvat, kun accordion avataan tai suljetaan. Näin ruudunlukijat ja muut apuvälineet voivat ilmoittaa accordionin tilan oikein käyttäjälle.

Suositeltu rakenne ja luokat:

  • accordion-item – koko accordion-elementti
  • accordion-trigger – klikattava osa, joka avaa/sulkee sisällön
  • accordion-content – sisältö, joka näkyy tai piilotetaan
Webflow-editorin näkymä, jossa accordionin otsikko ja avattava sisältöosa.

Mukautetut attribuutit accordionille

Voit lisätä mukautettuja attribuutteja Webflow Universityn ohjeiden mukaan: Custom Attributes

Suositellut attribuutit:

accordion-item

  • role="region"
Webflown asetukset, joissa accordionin rooliksi on asetettu “region”.

accordion-trigger

  • role="button"
  • aria-expanded="false"
  • aria-controls="{id-of-accordion-content}"
  • tabindex="0" (tarvitaan vain, jos trigger ei ole jo linkki tai painike)
Webflown asetukset, joissa accordion-trigger toimii painikkeena ja sillä on ARIA-attribuutit.

accordion-content

  • aria-hidden="true"

Näiden attribuuttien avulla ruudunlukijat ja muut apuvälineet voivat tulkita accordionin tilan oikein ja parantaa saavutettavuutta.

Webflown asetukset, joissa accordionin sisältö on piilotettu aria-hidden-attribuutilla saavutettavuuden parantamiseksi.

Mukautettu koodi accordionille

Lisää alla oleva koodi Before </body> -osioon sivun tai projektin asetuksissa.

Huom: Skripti käyttää luokkia:

  • accordion-trigger → trigger-elementti
  • accordion-content → sisältöelementti

Jos käytät eri luokkia, päivitä myös skriptissä luokkien nimet vastaamaan omiasi.

<script>
$(document).ready(function () {
    var accordionToggleButton = $('.accordion-trigger');
    accordionToggleButton.on('keydown', function (e) {
        // Activate on spacebar and enter
        if (e.type === "keydown" && (e.which !== 13 && e.which !== 32)) {
            return;
        }
        e.preventDefault();

        // Simulate a mouseclick to trigger Webflow's IX2/Interactions
        var evt = document.createEvent("MouseEvents");
        evt.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
        $(this).get(0).dispatchEvent(evt);
    });

    accordionToggleButton.on('click touchend', function (e) {
        $(this).toggleAttrVal('aria-expanded', "false", "true"); //toggle trigger attribute
        $(this).parent().find('.accordion-content').toggleAttrVal('aria-hidden', "true", "false"); //toggle content attribute
    });

    // jquery toggle just the attribute value
    $.fn.toggleAttrVal = function (attr, val1, val2) {
        var test = $(this).attr(attr);
        if (test === val1) {
            $(this).attr(attr, val2);
            return this;
        }
        if (test === val2) {
            $(this).attr(attr, val1);
            return this;
        }
        // default to val1 if neither
        $(this).attr(attr, val1);
        return this;
    };
});
</script>
Tarkemmat ohjeet tulossa pian...
0
/ 48
🎉 Kiitos, että teet verkosta saavutettavamman!
Kopioi linkki
Nollaa edistyminen

Tarvitsetko apua saavutettavuuden optimoimiseen?

Autamme mielellämme tekemään yrityksellenne saavutettavat verkkosivut ulkoasusta ja suorituskyvystä tinkimättä.

Varaa tapaaminen asiantuntijan kanssa