適用 (対象)
全般
これは達成基準 3.2.5: 要求による変化 (失敗) に関する達成方法である。
解説
この文書では、メインのビューポートに表示されているコンテンツが自動的に更新され、コンテンツに利用者がこの振る舞いを停止するための選択肢がない失敗例について述べている。
達成基準 3.2.5 の失敗例となるかどうかを検証するための手順が「検証」のセクションで挙げられている。手順 1. が可能であることが望ましく、コンテンツ制作者がビューポートのコンテンツを生成するコードを確認できることを想定している。
しかし、それが可能ではないケースも考えられる (例えば、CMS、django や ruby-on-rails などのアプリケーション環境、またはサードパーティによる Ajax や PHP などのスクリプト言語によって生成されるコンテンツなど)。そのため、手順 2. がそのような場合の検証のために提示されている。時間枠は指標でしかなく、その他の手順を満たしていなければ、一定の時間が経過した後に生じるあらゆる変化は失敗例としてみなすべきである。
事例
例 1
ニュースサイトで、常に最新の見出しが表示されるように、コンテンツが自動的に更新される。この振る舞いを停止させる選択肢がない。
例 2
スライドショーがビューポートの全体に表示されていて、自動的に次のスライドに進んでいく。停止ボタンはない。
例 3
検索エンジンが自動的に検索結果を生成し、利用者の入力に応じてコンテンツを動的に更新する。この振る舞いを停止する選択肢がない。
検証
手順
- 適当な編集ツールでソースコードを開く。
- そのソースコードを精査する。
- コンテンツが動的に生成されている、つまりコードがイベントによって又は一定時間後にビューポートのコンテキストの変更を引き起こすことを確認する。
- 利用者がこの動作を無効にするための適切なメカニズムが存在しないことを確認する。
期待される結果
- #3 及び #4 の両方の結果が真である場合、この失敗例の条件は適用され、コンテンツはこの達成基準の失敗となる。
手順
- 平均的な利用者がページに費やす時間を測定又は推定する。
- ページに移動する。
- 平均的な利用者がページに滞在する 10 倍の時間を待つ。(手順 1 から)
- この間にコンテキストに変化があるかどうか確認する。
- コンテキストの変化がない場合、終了する。
- コンテキストの変化がある場合は、そのコンテキストの変化を止めるメカニズムがページに存在するかどうかを確認する。
- コンテキストの変化を止めるメカニズムがある場合は、そのメカニズムを使用してコンテキストの変化を止めて、テストをやり直す。
- コンテキストの変化があり、コンテキストの変化を止めるメカニズムがない場合は失敗となる。
#1 の時間を測定または推定する一つの方法は、ウェブサイトの解析結果から平均的な利用者がページをどのくらいの時間見ているかを確認することである。
#6 の例は、自動更新をオフにするメカニズムである。
期待される結果
- #8 に達する場合、コンテンツはこの達成基準の失敗となる。