2016-10-07 4 views
1

jQuery UIのdatepickerウィジェット(API docsを参照)を使用していますが、アクセシビリティコンプライアンスのチェック担当者が挿入するボタンイメージについて不平を言っています。具体的には、ボタン画像上で「buttonText」属性が「alt」と「title」の両方として使用されることを示します。jQuery UI datepickerのアクセシビリティが失敗しました

入力:

<input type='text' name='from' id='from' value=''> 

<script type='text/javascript'> 
$(document).ready(function() { 
    $('#from').datepicker({ 
     buttonImageOnly: true, 
     buttonImage:  '/img/calendar_icon_20x20.png', 
     buttonText:  'select date from calendar' 
     ... 
}); 
</script> 

そして、生成されたボタンオブジェクトのようになります。

<img class="ui-datepicker-trigger" src="/img/calendar_icon_20x20.png" 
    alt="select date from calendar" 
    title="select date from calendar"> 

はALTとタイトルが同じにならないようにするいくつかの方法はありますか?

+0

アクセシビリティが懸念される場合は、[JQuery UI datepicker](https://jqueryui.com/datepicker/)にキーボードでアクセスできるかどうかを確認する必要があります。キーボードだけで日付を選ぶことはできません。代わりに[this datepicker](https://hanshillen.github.io/jqtest/#goto_datepicker)をチェックしてください。 –

+0

はい、後で、キーボードアクセスを追加するためにいくつかのローカルモデムを作成しなければなりませんでした。 –

答えて

0

問題のコードを見てみると、それを行うには直接的な方法はありません。

inst.trigger = $(this._get(inst, "buttonImageOnly") ? 
       $("<img/>").addClass(this._triggerClass) 
          .attr({ src: buttonImage, alt: buttonText, title: buttonText }) : 
       $("<button type='button'</button>") 
          .addClass(this._triggerClass) 
          .html(!buttonImage ? buttonText : $("<img/>") 
          .attr({ src: buttonImage, alt: buttonText, title: buttonText }))); 

buttonText属性は直接両方ALTタイトルプロパティに適用されています。

オプション:

  1. どうにかならば、追加buttonTitleプロパティ(間違いなく正しい選択でjqueryの-UIのローカルバリアントを作る JavaScriptの
  2. と事実の後にALTやタイトルプロパティを変更変更は上流に受け入れられる)
  3. タイトルをハードコードするローカルバリアントを作成する(私の怠惰な自己がしたこと)
+0

どこのデモがありますか? datepickerを入力フィールドの代わりにイメージに付ける理由はありますか? –

+0

ここにいる人たちが慣れ親しんでいるUIは、その右側のカレンダーの画像を持つテキスト入力であり、カレンダーの画像をクリックすると、datepickerが表示されます。他の人が間違いなく別のUIを望むかもしれません。 –

関連する問題