retour vers le site AccessiWeb

Guide AccessiWeb


vous êtes ici : Accueil > Fiches AccessiWeb : Contenus accessibles > Fiche 13.2

Fiche 13.2 : Si une redirection automatique est présente, s'effectue-t-elle sans l'intermédiaire d'un script ?

Carte d'identité

  • Critère AccessiWeb : 13.2
  • Niveau AccessiWeb : bronze
  • Point(s) de contrôle WCAG 1.0 correspondants (Priorité 2 de WAI) : 7.5

revenir en haut de la page

Comprendre

Bénéfices pour les utilisateurs

Valeur ajoutée pour le site

revenir en haut de la page

Comment évaluer

Par le code source

  1. Rechercher les occurrences des commandes JavaScript "setTimeout", "location.href" ou les codes HTML onLoad associés à un appel de JavaScript.
    Si la lecture permet de mettre en évidence l'usage de ces commandes pour une redirection, le critère est invalidé.
  2. Rechercher les balises META...REFRESH.
    La présence de ces balises n'invalide pas le critère, mais peut faire l'objet d'une remarque.

Par l'utilisation d'outils

Pour une liste complète des outils utilisés pour évaluer l'accessibilité des pages web, et un résumé de leurs principales fonctionnalités, reportez-vous à la page Outils d'aide à l'évaluation.

Evaluer avec la barre AccessiWeb (version 1.0) :
  1. Sous Internet Explorer, ouvrir la page à analyser.
  2. Dans le menu "13: Contenus accessibles" de la Barre AccessiWeb, activer le critère 13.2.
  3. Toutes les actions de la page générées par un javascript sont désactivées.
  4. Cliquer sur les liens faisant l'objet d'une redirection et vérifiez si les redirections fonctionnent encore. Si ce n'est pas le cas, le critère est invalidé.
    Note : pour réactiver les javascripts de la page, cliquer sur le critère 13.2.

Evaluer avec la barre d'accessibilité AIS pour Internet Explorer (version 1.2 en français) :
  1. Cliquer sur l'option "activer/désactiver le Javascript" du menu "Option IE".
  2. Recharger la page en appuyant sur la touche F5.
  3. Cliquer sur les liens faisant l'objet d'une redirection et vérifiez si les redirections fonctionnent encore. Si ce n'est pas le cas, le critère est invalidé.

Evaluer avec la Barre d'Outils Web Developper pour Firefox (version 1.0.2 en français) :
  1. Activer l'option "Désactiver JavaScript" du menu "Désactiver".
  2. Puis, activer l'option "Désactiver les redirections Meta" du menu "Désactiver".
  3. Recharger la page en appuyant sur la touche F5.
  4. Cliquer sur les liens faisant l'objet d'une redirection et vérifiez si les redirections fonctionnent encore. Si ce n'est pas le cas, le critère est invalidé.

Evaluer avec le lecteur d'écran Jaws (version 5 et 6.2 en français) :
Ce critère n'est pas évaluable par le lecteur d'écran Jaws.

revenir en haut de la page

Comment mettre en oeuvre

Qui est concerné ?

Le développeur doit veiller au respect de ce critère.

Implémentation

La redirection est utilisée le plus souvent pour résoudre les problèmes suivants :


Actuellement, la méthode de redirection la plus utilisée, et conseillée sur la plupart des sites d'aide au développement, consiste à intégrer à la page une balise META en entête :

<meta http-equiv="refresh" content="5" url="http://www.le beaunouveausite.com" />


Grâce à cette balise, la redirection s'effectue automatiquement après 5 secondes.
Cependant, cette possibilité est à éviter, car l'utilisateur n'est pas prévenu qu'un tel mécanisme existe dans la page appelée, ce qui peut être troublant.

Préférer une solution implémentée du côté serveur, le programme ou script serveur assurant lui-même la redirection vers la page voulue.
Sinon, la solution la plus simple consiste en un lien clairement visible dans la page. L'utilisateur déclenche alors lui-même la redirection en sachant ce qu'il fait.

Exemple de mauvaise pratique

Le code qui suit opère une redirection automatique dès le chargement de la page, ce qui interdit à l'utilisateur tout contrôle.

<meta http-equiv="refresh" content="5" url="http://www.le beaunouveausite.com" />

Exemple de bonne pratique

Voici quelques exemples des possibilités de redirection à implémenter côté serveur.

  1. Code Php de redirection : utilisation de la fonction "Header"

    <?PHP
    header("Status: 301 Moved Permanently");
    header("Location: http://www.le beau nouveau site.com/index.php");
    exit();
    ?>


    L'usage délicat de cette fonction en Php dépend des versions de Php et ne doit être précédé d'aucun code de sortie de données (tels echo, Print).
  2. Code Asp de redirection : utilisation de la fonction "AddHeader"

    <% response.status="301 moved permanently"
    response.addheader location, "http://www.lebeaunouveausite.com/nouveau.php"
    response.end %>

  3. Code Php de redirection : par appel d'un script distant

    //construction de la requête
    // L'url principale
    $requete = "http://www.le beau nouveausite.com/index.php?";
    // Les arguments si nécessaire
    $requete .= "id=".$id;
    // Exécution du script distant
    $connect = @file($requete); // exécution de la requête vers le serveur
    // Récupération des informations de la page appelée
    $resultat = trim($connect[0]);
    print($resultat);
    // Fin du script en cours
    exit;

revenir en haut de la page

Illustrations

Il n'y a pas d'illustration pour cette fiche.

revenir en haut de la page

Références

Autres fiches à consulter

Autres ressources

revenir en haut de la page


Fiche précédente : fiche 13.1 Fiche suivante : fiche 13.3

Guide AccessiWeb (version 2.1, 30 août 2006) | Conditions d'utilisation | Contact