Standardit · ARIA

Ominaisuus Widgetin tila

aria-setsize

Joukon kohteiden kokonaismäärä, kun DOM ei sisällä niitä kaikkia. Yhdistetään aria-posinset-attribuuttiin, jotta ruudunlukuohjelma voi ilmoittaa "kohde 14 / 5 000" vaikka vain viisi olisi renderöity. Käytä arvoa -1, jos kokonaismäärä on tuntematon.

Milloin käyttää

Aina kun käytät aria-posinset-attribuuttia. Kaksi attribuuttia muodostavat parin: sijainti on merkityksetön ilman kokonaismäärää. Yleisiä tapauksia ovat virtualisoidut listat, sivutetut ruudukot, suodatetut comboboxit ja loputtomasti latautuvat syötteet — kaikkialle, missä DOM sisältää vain ikkunan suurempaan kokoelmaan.

Kelvollinen suuremmissa joukoissa: option, menuitem, treeitem, tab, row, article feed-elementissä. Attribuutti asetetaan kohteisiin, ei säilöön.

Toimintatapa

Arvo on kokonaisluku. Käytä todellista kokonaismäärää, kun se on tiedossa. Käytä -1, kun kokonaismäärä on aidosti rajoittamaton tai tuntematon — esimerkiksi reaaliaikainen hakusyöte, joka lataa lisää tuloksia. Jotkut ruudunlukuohjelmat ilmoittavat -1:n “monta” tai jättävät lukumäärän kokonaan pois; toiset käyttävät ääneti sisaruksien lukumäärää.

Päivitä aria-setsize aina, kun taustalla oleva joukko muuttuu: uuden suodattimen, lajittelun tai poistetun rivin jälkeen. Jokaisella näkyvän ikkunan kohteella on oltava sama aria-setsize-arvo; sisaruksilla eri arvot tuottavat hämmentäviä ilmoituksia, kuten “1 / 10” ja “2 / 9”.

Yleisimmät virheet

  • aria-setsize:n asettaminen säilöön eikä jokaiseen kohteeseen erikseen. Attribuutti on kohdekohtainen.
  • Arvon päivittämisen unohtaminen suodatuksen tai lajittelun jälkeen, jolloin käyttäjä kuulee suodattamattoman kokonaismäärän vaikka monia tuloksia ei enää ole saatavilla.
  • Ristiriitainen aria-setsize sisaruksilla — yhdellä kohteella 100, seuraavalla 99.
  • aria-setsize:n käyttäminen kohteissa, joiden säilö sisältää jo kaikki kohteet DOM-järjestyksessä. Avustava teknologia laski ne oikein; attribuutin lisääminen aiheuttaa ristiriitoja.
  • Nolla tai muut negatiiviset arvot kuin -1. Vain positiiviset kokonaisluvut ja -1 ovat merkityksellisiä.
  • aria-posinset:n unohtaminen. aria-setsize yksinään kertoo käyttäjälle kohteiden kokonaismäärän, mutta ei missä he ovat.

Esimerkki

<!-- Puu, johon laiskasti ladatut lapset lisätään käyttäjän laajentaessa haaroja -->
<ul role="tree" aria-label="Files">
  <li
    role="treeitem"
    aria-level="2"
    aria-posinset="1"
    aria-setsize="248"
  >
    invoice-001.pdf
  </li>
  <li
    role="treeitem"
    aria-level="2"
    aria-posinset="2"
    aria-setsize="248"
  >
    invoice-002.pdf
  </li>
  <!-- 246 lisää, ladataan laiskasti käyttäjän vierittäessä -->
</ul>