WCAG 2.0 実装方法集

メインコンテンツへスキップ

-

F37: 達成基準 3.2.2 の不適合事例 - ラジオボタン、チェックボックス、又はセレクトリストを変更すると、事前の予告なしに新しいウィンドウを開いている

適用(対象)

HTML 及び XHTML

これは、次の達成基準に関連する不適合事例である:

ユーザーエージェント及び支援技術のサポートに関するメモ

onclickを持つラジオボタンがフォーカスを受け取る時、Internet Explorer 6 は onclickイベントも引き起こす。この動作を防ぐためには他のイベント・ハンドラ(onxxx属性)を追加する。

解説

この文書では、ラジオボタン、チェックボックス、又はセレクトリストの項目のステータスを変更することによって新しいウィンドウが開く場合に発生する不適合事例について解説する。要素が選択された時、状況の変化(フォームの送信、新しいページを開く、新しいウィンドウ)を引き起こすinput要素を生成するために、スクリプトを使用することができる。開発者は代わりに送信ボタンを使用するか(G80: 状況の変化を開始する実行ボタンを提供するを参照)、又はそこで起こる動作を明確に示す必要がある。

事例

不適合事例 1:

下記の例では、送信ボタンを使うのではなく、ラジオボタンが選択されたときにフォームが処理されるため、達成基準を満たしていない。

コード例:

  
<script type="text/JavaScript"> 
  function goToMirror(theInput) {
   var mirrorSite = "http://download." + theInput.value + "/"; 
   window.open(mirrorSite); 
  }
</script>
  …
<form name="mirror_form" id="mirror_form" action="" method="get">
       <p>ミラーダウンロードサイトを選択して下さい:</p> 
       <p> 
       <input type="radio" onclick="goToMirror(this);" name="mirror" 
       id="mirror_belnet" value="belnet.be" /> 
       <label for="mirror_belnet">belnet (<abbr>BE</abbr>)</label><br /> 
       <input type="radio" onclick="goToMirror(this);" name="mirror" 
       id="mirror_surfnet" value="surfnet.nl" /> 
       <label for="mirror_surfnet">surfnet (<abbr>NL</abbr>)</label><br /> 
       <input type="radio" onclick="goToMirror(this);" name="mirror" 
       id="mirror_puzzle" value="puzzle.ch" /> 
       <label for="mirror_puzzle">puzzle (<abbr>CH</abbr>)</label><br /> 
       <input type="radio" onclick="goToMirror(this);" name="mirror" 
       id="mirror_voxel" value="voxel.com" /> 
       <label for="mirror_voxel">voxel (<abbr>US</abbr>)</label><br /> 
       </p> 
</form>

参考リソース

この実装方法に関しては参考リソースが提供されていない。

(今のところなし)

検証

チェックポイント

  1. ページの中からフォームを探す。

  2. フォーム・コントロールのラジオボタン、チェックボックス、又はセレクトリストの項目のステータスを変更すると、新しいウィンドウが立ち上がるかどうかを確認する。

  3. ステップ2の結果として生成されたそれぞれの新しいウィンドウが、事前に利用者に警告されているか確認する。

判定基準

3.を満たしていない場合、この不適合条件が適用され、コンテンツは達成基準に不適合となる。

日本語訳における注記:

この文書の正式版は、W3Cサイトで公開されている英語の文書であり、この日本語訳には誤訳が含まれていることもありえます。なお、文中にある「日本語訳における注記」は、W3Cの原文にはないものであり、日本語訳監修者が追記したものです。