Tester la navigation au clavier dans les composants complexes d'Oracle JET

Introduction

Il s'agit de notre premier regard sur l'onglet Départements dans l'application ACCLearningPath. Le processus d'examen décrit dans le parcours d'apprentissage précédent de la présente série sur l'accessibilité est suivi afin de cerner tout problème d'accessibilité.

Objectifs

Dans ce tutoriel, vous apprendrez à identifier et à résoudre les problèmes d'accessibilité dans l'onglet Services de l'application ACCLearningPath.

Prérequis

Tâche 1 : vérifier la structure de la page

  1. Dans la fenêtre de terminal, accédez au dossier ACCLearningPath et exécutez l'application.

    $ ojet serve
    

    L'application du navigateur s'ouvre sur la page Introduction et l'onglet Aperçu est chargé.

  2. Cliquez sur l'onglet Departments dans la barre d'onglets et évaluez la structure de la page. La page Services se compose de trois panneaux, chaque panneau affichant les données des services à l'aide de divers composants Oracle JET.

    Onglet Services avant

  3. Accédez au dossier ACCLearningPath/src/js/views et ouvrez le fichier departments.html dans un éditeur de code.

  4. Localisez la balise <div> principale dans le fichier.

    <div class="oj-hybrid-padding">
       <div id="mainContainer" class="oj-flex" style="width:100%;">
    
  5. Insérez un en-tête h3 entre les deux balises <div> pour identifier la page Services.

    <div class="oj-hybrid-padding">
       <h3>Departments</h3>
       <div id="mainContainer" class="oj-flex" style="width:100%;">
    
  6. Localisez la balise <div> qui définit le panneau central contenant une pellicule.

    <div class="oj-flex-item fs-container">
       <oj-film-strip id="deptFilmstrip" max-items-per-page="1"
          . . . >
    
  7. Insérez un en-tête h4 entre les balises d'ouverture <div> et <oj-filmstrip> pour identifier le panneau et fournir une étiquette visible pour la pellicule.

    <div class="oj-flex-item fs-container">
       <h4>Departments Film Strip</h4>
       <oj-film-strip id=“deptFilmstrip” max-items-per-page=“1”
          . . . >
    
  8. Localisez la balise <div> qui forme le panneau de gauche contenant une grille de données.

    <div class="oj-flex-item">
       <oj-data-grid id="datagrid"
          style="width:100%; min-width:400px; height:200px; margin-bottom:5px"
          . . . >
    
  9. Insérez un en-tête h4 entre les balises <div> et <oj-data-grid> afin d'identifier le panneau et de fournir un libellé visible pour la grille de données.

    <div class="oj-flex-item">
       <h4>Departments Data Grid</h4>
       <oj-data-grid id="datagrid"
          style="width:100%; min-width:400px; height:200px; margin-bottom:5px"
          . . . >
    
  10. Localisez la balise <div> d'ouverture qui forme le troisième panneau contenant un graphique.

      <div class="oj-flex-item oj-sm-margin-4x-horizontal">
         <oj-chart id="pieChart" type="bar" data="[[chartDataProvider]]" animation-on-display="auto" animation-on-data-change="auto"
            . . . >
    
  11. Insérez un en-tête h4 entre les balises <div> et <oj-chart> d'ouverture. Cet en-tête identifie le panneau et sert de libellé visuel pour le graphique.

      <div class="oj-flex-item oj-sm-margin-4x-horizontal">
         <h4>Salaries by Department</h4>
         <oj-chart id="pieChart"
            type="bar"
            data="[[chartDataProvider]]"
            animation-on-display="auto"
            animation-on-data-change="auto"
            . . . >
    
  12. Enregistrez le fichier. Dans le navigateur, vérifiez les modifications apportées à l'onglet Services de votre application.

    Onglet Services après

Tâche 2 : effectuer un test au clavier uniquement

La deuxième partie de la révision de l'accessibilité consiste à effectuer un test au clavier uniquement de l'onglet Services de l'application.

  1. Appuyez sur <Ctrl+L> pour activer la barre d'adresse.

  2. Appuyez sur <Tab>. Le focus se déplace vers le lien skip nav.

  3. Appuyez sur <Tab>. Le focus se déplace vers john.hancock@oracle.com dans le menu utilisateur en haut à droite de la page.

  4. Appuyez sur <Tab>. Le focus se déplace vers Introduction dans le menu de navigation immédiatement sous le menu utilisateur.

  5. Appuyez sur <Tab>. Le focus se déplace vers Présentation dans la barre d'onglets.

  6. Appuyez sur <Tab>. Le focus est placé sur la comptabilité dans la pellicule.

  7. Appuyez sur <right arrow> pour passer à l'entrée suivante, Recherche, dans la pellicule.

  8. Appuyez sur <left arrow> pour revenir à Comptabilité dans la pellicule.

  9. Appuyez trois fois sur <right arrow>. Le focus passe à la dernière entrée de la pellicule, Opérations.

  10. Appuyez sur <Tab>. Le focus se déplace vers la première cellule du corps de données dans la grille de données, sous la colonne Id. La valeur de la cellule focalisée est 10.

  11. Appuyez sur <right arrow>. Le focus se déplace vers Accounting sous la deuxième colonne de la grille de données, Name.

  12. Appuyez sur <right arrow>. Le focus se déplace vers New York dans la colonne finale de la grille de données, Lieu.

    Le contour du focus apparaît autour de la cellule qui contient le nom de la ville.

  13. Appuyez sur <F2>. Le contour du focus se resserre pour entourer uniquement le texte New York dans la cellule.

    Selon la documentation de l'élément <oj-data-grid> sur le clavier, utilisez <F2> pour rendre le contenu de la cellule exploitable. La clé de fonction <F2> vous permet de lancer les actions prises en charge par le composant actif. Dans ce cas, la cellule contient un lien vers Google Maps que vous activerez.

  14. Appuyez sur <Enter> pour activer le lien New York. Une nouvelle fenêtre de navigateur s'ouvre sur une page Google Maps de New York.

  15. Appuyez sur <Ctrl+F4> pour fermer la fenêtre Google Maps.

  16. Appuyez sur <Esc>. Le contour du focus s'élargit pour entourer la cellule qui contient New York dans la troisième colonne.

    Selon la documentation du clavier de l'élément <oj-data-grid>, utilisez <Esc> pour quitter le mode actionnable afin de continuer à naviguer vers d'autres composants.

  17. Appuyez sur <Tab>. Le focus se déplace vers la première barre du graphique à barres.

Tâche 3 : validation d'un lecteur d'écran

Le dernier élément de la revue d'accessibilité est la validation du lecteur d'écran. Les étapes de validation suivantes sont basées sur l'utilisation du lecteur d'écran JAWS, mais les résultats seront similaires si vous utilisez le lecteur d'écran NVDA.

  1. Dans la fenêtre de terminal, quittez l'application en cours d'exécution en appuyant sur <Ctrl+C> et, si vous y êtes invité, entrez y.

  2. Démarrez votre lecteur d'écran, puis redémarrez votre application Web.

    $ ojet serve
    

    Votre application s'ouvrira automatiquement dans votre navigateur ; le lecteur d'écran commencera à lire une fois que la page sera complètement chargée.

  3. Cliquez sur l'onglet Departments dans la barre d'onglets. N'utilisez pas la souris après ce point.

  4. Appuyez sur <Ctrl+L> pour activer la barre d'adresse.

  5. Appuyez sur <Tab>. JAWS indique : "Passer au contenu principal. Même lien de page."

  6. Appuyez sur <Tab>. JAWS dit : " Région de Banner. Barre d'outils. Menu du bouton john.hancock@oracle.com. Appuyez sur l'espace pour activer le menu, puis naviguez avec les touches fléchées."

  7. Appuyez sur <Tab>. JAWS indique : onglet Région de navigation. Onglet Introduction sélectionné. 1 sur 2."

  8. Appuyez sur <Tab>. JAWS indique : Onglet Région principale. Onglet Services sélectionné. 4 sur 4."

  9. Appuyez sur <Tab> pour déplacer le focus vers la bandelette. JAWS dit : " Comptabilité. New York. 3 employés. Affichage de la page 1 sur 4."

  10. Appuyez sur <Tab> pour déplacer le curseur vers la grille de données. JAWS dit : " Il s'agit d'une grille de données avec 4 lignes et 3 colonnes. ID. Nom Emplacement." Après avoir lu les en-têtes de colonne, le lecteur d'écran lit les cellules de données du tableau de gauche à droite. Ensuite, il lit le focus actuel, "Ligne 1. Colonne 1. ID : 10."

  11. Appuyez sur <right arrow>. JAWS dit : "Colonne 2. Nom : Comptabilité."

  12. Appuyez sur <right arrow>. JAWS dit : "Colonne 3. Lieu : New York. Contient des contrôles. Vous avez atteint la dernière colonne."

  13. Appuyez sur <Tab>. JAWS dit : " Visualisation des données : graphique. Graphique. Série : Comptabilité ; Groupe : Département ; Valeur : 3 750,00 USD. Graphique."

    Notez que lorsque le focus se déplace entre les panneaux, JAWS ne donne aucune indication des en-têtes des panneaux. Il n'y a pas non plus moyen de faire défiler la pellicule d'une page à l'autre.

  14. Ouvrez le fichier departments.html dans votre éditeur de code.

  15. Localisez la balise <oj-film-strip> d'ouverture et ajoutez un attribut aria-label.

      <oj-film-strip id="deptFilmstrip"
         max-items-per-page="1"
         aria-label="Departments Film Strip - Use the paging controls in the next region to change pages."
         arrow-visibility="hidden"
         class="demo-stretch-items"
         . . . >
    
  16. Localisez la balise <oj-data-grid> d'ouverture et ajoutez un attribut aria-label.

      <oj-data-grid id="datagrid"
         style="width:100%; min-width: 400px; height:200px;margin-bottom:5px"
         aria-label="Departments Data Grid -- Press enter on the city name to open a google map of the city."
         data="[[dgDataProvider]]"
         header.column.style="[[getCellWidth]]"
         . . . >
    
  17. Localisez la balise <oj-chart> d'ouverture et ajoutez un attribut aria-label.

      <oj-chart id="pieChart"
         type="bar"
         aria-label="Salaries by Department bar chart"
         data="[[chartDataProvider]]"
         animation-on-display="auto"
         animation-on-data-change="auto"
         . . . >
    

    Le changement final implique les commandes de pagination pour la pellicule dans le panneau central.

  18. Localisez les balises fermantes </oj-film-strip> et </oj-bind-if>.

            </oj-film-strip>
         </div>
      </div>
      </oj-bind-if>
    
  19. Ajoutez le contrôle de pagination et les éléments div environnants entre les balises fermantes </div> et </oj-bind-if>.

            </oj-film-strip>
         </div>
      </div>
      <div class="oj-flex oj-sm-flex-items-initial oj-sm-justify-content-center">
         <div class="oj-flex-item">
            <div style="text-align: center;">
            <div style="display: inline-block;margin-top: 4px;">
               <oj-paging-control id="pagingControl"
                  aria-controls="deptFilmstrip"
                  data="[[pagingModel]]"
                  page-size="0"
                  page-options='{"type": "dots"}'>
               </oj-paging-control>
            </div>
            </div>
         </div>
      </div>
      </oj-bind-if>
    
  20. Enregistrez le fichier. Votre fichier doit ressembler à departments-html.txt.

  21. Réexécutez la validation du lecteur d'écran. Assurez-vous que les étiquettes sont prononcées pour la bande de film, la grille de données et le graphique et que les contrôles de pagination sont présents sous la bande de film.

Etape suivante

Ce tutoriel conclut le module Valider et corriger l'accessibilité des applications dans ce parcours de formation sur l'accessibilité des applications Web.

Vous pouvez revenir à la page principale du parcours de formation sur l'accessibilité pour accéder à tous les modules sur l'accessibilité, ainsi qu'à d'autres parcours de formation.

Ressources de formation supplémentaires

Explorez d'autres ateliers sur le site docs.oracle.com/learn ou accédez à d'autres contenus d'apprentissage gratuits sur le canal Oracle Learning YouTube. En outre, visitez le site education.oracle.com/learning-explorer pour devenir un explorateur Oracle Learning.

Pour obtenir de la documentation sur le produit, consultez Oracle Help Center.