2017-01-23 13 views
-1

Dojoライブラリを使用してドロップダウン・メニューを作成する動的に生成されたhtmlがいくつかあります。私は私のコードのアクセシビリティ対応にする必要があり、今のスクリーンリーダーは、メニュー項目を見て、単純なHTMLとしてそれを読み取りますラベルhtml文字列がスクリーン・リーダーによって読み取られる

menu.addChild(new MenuItem({ 
     label: "<a onclick=window.location.href='sampleurl.com' 
        href="sampleurl.com">Sample Link</a> ... 

言い訳はonclickの、それは別の問題のためだが、私は取得していますことは、基本的には:ダウン最初のメニュー項目へ

タブ

スクリーンリーダー:...「onclickの未満は、ウィンドウのドット位置のドットのhrefがsampleurlに等しい等しい」など私はアリア-hiddeを使用してみました

nを使用していますが、スクリーンリーダーはテキストとしてMac OSでボイスオーバーを使用していますが、JAWSにも準拠している必要があります。任意のヒントやアドバイス?ありがとう!

答えて

2

ラベルはラベルに使用されます(HTMLでも可)、フルリンクのhtmlタグを挿入するためのラベルではありません。 https://dojotoolkit.org/reference-guide/1.10/dijit/Menu.html

例:

menu.addChild(new MenuItem({ 
    label: "Sample Link", 
    onclick: function() {window.location.href='sampleurl.com';}})); 

は、メニュー項目を生成するために、Dojoライブラリーを使用する方法を次のページで見ます

0

これは、使用しているスクリーンリーダーとブラウザの組み合わせを示すものとともに、実際の例でデバッグするのが簡単です。最低限、スクリーンリーダーが解析するためのHTMLを記述していることを考慮して、スクリプトのHTML出力を表示してください。

言われているように、私は不足している/矛盾した引用を疑う。文字列を二重引用符で始める場合は、引用符のないonclick属性に入り、その値を一重引用符で囲み、hrefの前後に二重引用符を使用してください。

また、文字列全体をページに書き込んで、何らかの形でそれをエンコードしています。

リンチングツールを使用してJSを確認することをおすすめします。

関連する問題