2017-06-06 2 views
0

私のスクリーンリーダーJAWS 17がチェックしています。私はそれをチェックするときチェックボックスをオンにすると、アリアチェックの値が真から偽に切り替わらない

私は問題をデバッグし、ARIA-確認=「false」のことが分かったがARIA-確認=「true」をへの切り替えされていません。

私はGoogle Chromeの58.0.3029.110(64ビット)、プロジェクト内の

HTML

<modified-input 
     enter-space-press="checked(row)" 
     disabled="!row.enabled" 
     ng-click="check(row)"> 
</modified-input> 

指令

function modifiedInput($window, $rootScope, _) { 
     return { 
      restrict: 'E', 
      scope: { 
       value:'=?', 
       disabled:'=?', 
      }, 
      template: (
       '<input ' + 
       'type="checkbox" ' + 
       'ng-disabled="disabled" ' + 
       'aria-checked= "false" ' + 
       'ng-value="value"/>' 
      ), 

     }; 
    } 

    modifiedInput.$inject = ["$window", "$rootScope", '_']; 
    module.exports = modifiedInput; 

答えて

1

使用ngAriaを使用しています。それは自動的に共通のアリア属性を処理する必要があります。

あなたのプロジェクトと使用NG-モデルでngAriaが含まれている場合のドキュメントに基づいてworking plunker here.

を参照してくださいofficial documentation here.

を読んで、ARIAの属性が自動的に処理されます。私はこれにテンプレートを変更することをお勧めしたい

template: (
     '<input ' + 
     'type="checkbox" ' + 
     'ng-disabled="disabled" ' + 
     'ng-value="value" ' + 
     'ng-model="checked"/>' 
    ) 
+0

こんにちはあなたに留守番を砦に感謝するが、私はそれを使用しています。そして、それが動作しない – Alexander

+0

こんにちは、このplunkerを確認してください:https://plnkr.co/edit/USU7whlPhsuW4KU3xwUR?p=preview – CodeWarrior

+0

ng-modelを使用する場合、ドキュメントに基づいて、ngAriaは自動的にaria属性を処理する必要があります。私はこれを使って答えを更新します – CodeWarrior

関連する問題