<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: WAI-ARIA &#8211; Epic Fail: Wenn der Screenreader nicht mehr aufhören will zu plappern</title>
	<atom:link href="http://www.protofunc.com/2009/12/30/wai-aria-epic-fail-wenn-der-screenreader-nicht-mehr-aufhoren-will-zu-plappern/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.protofunc.com/2009/12/30/wai-aria-epic-fail-wenn-der-screenreader-nicht-mehr-aufhoren-will-zu-plappern/</link>
	<description></description>
	<lastBuildDate>Sat, 28 Aug 2010 14:35:34 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: alexander farkas</title>
		<link>http://www.protofunc.com/2009/12/30/wai-aria-epic-fail-wenn-der-screenreader-nicht-mehr-aufhoren-will-zu-plappern/comment-page-1/#comment-222</link>
		<dc:creator>alexander farkas</dc:creator>
		<pubDate>Mon, 04 Jan 2010 20:39:51 +0000</pubDate>
		<guid isPermaLink="false">http://www.protofunc.com/?p=33#comment-222</guid>
		<description>Hallo Lars,

Die Sache die du derzeit machst als auch die Sache, die du vorhast, hören sich beide nicht schlecht an. 

Im Prinzip soll der User bei einer Aktion erfahren, daß diese etwas (erfolgreich) ausgelöst hat. Dies muß natürlich sowohl für Sehende (yellow-fade möglichst in der Nähe des Klickbereichs) als auch für Blinde erfolgen.

Für Blinde sollte der Text kurz sein, aber auch gleichzeitig die wichtigen Infos haben: Also a) Produkt x wurde hinzugefügt und b) Warenkorb hat jetzt einen Stand x EURO.

Dieser Text muß hierbei kein alert sein, sondern kann eine normale liveregion sein.

Ein alert ist im Prinzip nichts anders als eine Liveregion mit der Einstellung assertive (früher das stärkere: rude) und der vorangestellten Rollenbezeichnung (im deutschen: Hinweis!). Diese Rolle ist für wichtige Informationen gedacht und vom Vorleseverhalten etwas aufdringlicher als live=&quot;polite&quot;. Das Updaten des Warenkorbs ist hierbei mit Sicherheit nicht so wichtig, so daß ein alert eigentlich falsch ist. Der Text könnte also auch in einem Bereich mit aria-live=&quot;polite&quot; stehen. 

Was das alert, aber dennoch interesssant macht, ist daß es im Gegensatz zu allen anderen Liveregionen bereits ab Jaws 8 funktioniert (alle anderen erst ab Jaws 10). Worauf du beim alert achten solltest:

Liveregionen lesen im allgemeinen &quot;verkürzte&quot; Strukturinformationen vor. Alert liest nur Text (du kannst aber dennoch rein der Optik wegen strukturieren). Bei NVDA 0.6p2 hatte ich einmal das Problem, daß - aufgrund irgendeines semantischen Elements - der Inhalt nicht vorgelesen wurde. Ich hatte das durch die Rolle presentation auf alle Inhaltselemente gelöst.

Du kannst übrigens auch den sichtbaren Hinweis vom vorgelesenen Inhalt abkoppeln und unterschiedliches ausgeben. Wenn du beispielsweise auf http://www.aperto.de/start/referenzen.html gehst und dort mit firebug das HTML inspectest, siehst du unter dem div#wrapper mehrere HTML-Elemente. Das 2. von oben ist beispielsweise ein alert und darunter kommt ein wrapper, welcher ein live=&quot;polite&quot; enthält. Wenn du innerhalb der Referenzen rumklickst, siehst du wie sich der Inhalt der liveregion für einen Bruchteil einer Sekunde ändert. Der Inahlt gibt im Prinzip nichts anderes wieder, als das die Referenzen X geladen werden. Der Titel der geänderten Referenzen wird bei Success dann geladen. &quot;Leider&quot; ist unser Backend so schnell, daß ich überlege es rauszunehmen.

Ich hoffe das hilft dir weiter.

Grüße
Alex</description>
		<content:encoded><![CDATA[<p>Hallo Lars,</p>
<p>Die Sache die du derzeit machst als auch die Sache, die du vorhast, hören sich beide nicht schlecht an. </p>
<p>Im Prinzip soll der User bei einer Aktion erfahren, daß diese etwas (erfolgreich) ausgelöst hat. Dies muß natürlich sowohl für Sehende (yellow-fade möglichst in der Nähe des Klickbereichs) als auch für Blinde erfolgen.</p>
<p>Für Blinde sollte der Text kurz sein, aber auch gleichzeitig die wichtigen Infos haben: Also a) Produkt x wurde hinzugefügt und b) Warenkorb hat jetzt einen Stand x EURO.</p>
<p>Dieser Text muß hierbei kein alert sein, sondern kann eine normale liveregion sein.</p>
<p>Ein alert ist im Prinzip nichts anders als eine Liveregion mit der Einstellung assertive (früher das stärkere: rude) und der vorangestellten Rollenbezeichnung (im deutschen: Hinweis!). Diese Rolle ist für wichtige Informationen gedacht und vom Vorleseverhalten etwas aufdringlicher als live=&#8221;polite&#8221;. Das Updaten des Warenkorbs ist hierbei mit Sicherheit nicht so wichtig, so daß ein alert eigentlich falsch ist. Der Text könnte also auch in einem Bereich mit aria-live=&#8221;polite&#8221; stehen. </p>
<p>Was das alert, aber dennoch interesssant macht, ist daß es im Gegensatz zu allen anderen Liveregionen bereits ab Jaws 8 funktioniert (alle anderen erst ab Jaws 10). Worauf du beim alert achten solltest:</p>
<p>Liveregionen lesen im allgemeinen &#8220;verkürzte&#8221; Strukturinformationen vor. Alert liest nur Text (du kannst aber dennoch rein der Optik wegen strukturieren). Bei NVDA 0.6p2 hatte ich einmal das Problem, daß &#8211; aufgrund irgendeines semantischen Elements &#8211; der Inhalt nicht vorgelesen wurde. Ich hatte das durch die Rolle presentation auf alle Inhaltselemente gelöst.</p>
<p>Du kannst übrigens auch den sichtbaren Hinweis vom vorgelesenen Inhalt abkoppeln und unterschiedliches ausgeben. Wenn du beispielsweise auf <a href="http://www.aperto.de/start/referenzen.html" rel="nofollow">http://www.aperto.de/start/referenzen.html</a> gehst und dort mit firebug das HTML inspectest, siehst du unter dem div#wrapper mehrere HTML-Elemente. Das 2. von oben ist beispielsweise ein alert und darunter kommt ein wrapper, welcher ein live=&#8221;polite&#8221; enthält. Wenn du innerhalb der Referenzen rumklickst, siehst du wie sich der Inhalt der liveregion für einen Bruchteil einer Sekunde ändert. Der Inahlt gibt im Prinzip nichts anderes wieder, als das die Referenzen X geladen werden. Der Titel der geänderten Referenzen wird bei Success dann geladen. &#8220;Leider&#8221; ist unser Backend so schnell, daß ich überlege es rauszunehmen.</p>
<p>Ich hoffe das hilft dir weiter.</p>
<p>Grüße<br />
Alex</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Lars</title>
		<link>http://www.protofunc.com/2009/12/30/wai-aria-epic-fail-wenn-der-screenreader-nicht-mehr-aufhoren-will-zu-plappern/comment-page-1/#comment-221</link>
		<dc:creator>Lars</dc:creator>
		<pubDate>Mon, 04 Jan 2010 13:12:50 +0000</pubDate>
		<guid isPermaLink="false">http://www.protofunc.com/?p=33#comment-221</guid>
		<description>Hallo,

ich hab mich auch schon ein bisschen mit WAI-ARIA beschäftigt und probieren gerade ein wenig mit Live Regions bei einem Ajax-Warenkorb rum.
Ich hatte bis jetzt immer den Warenkorb als aria-live=polite gekennzeichnet.
Jetzt habe ich mir aber gedacht, das es vielleicht gar nicht nötig ist, den ganzen Warenkorb als Live Region auszuzeichnen und statt dessen einfach ein alert mit yellow- Fade zu geben &quot;Der Artikel wurde dem Warenkorb hinzugefügt.&quot; Aber nach deinem Beitrag hier bin ich mir noch unsicherer.
Was würdest du denn vorschlagen, bei einem Warenkorb der per Ajax gefüllt wird? Also wie soll man am besten so einen Warenkorb für Screenreader User zugänglich machen?</description>
		<content:encoded><![CDATA[<p>Hallo,</p>
<p>ich hab mich auch schon ein bisschen mit WAI-ARIA beschäftigt und probieren gerade ein wenig mit Live Regions bei einem Ajax-Warenkorb rum.<br />
Ich hatte bis jetzt immer den Warenkorb als aria-live=polite gekennzeichnet.<br />
Jetzt habe ich mir aber gedacht, das es vielleicht gar nicht nötig ist, den ganzen Warenkorb als Live Region auszuzeichnen und statt dessen einfach ein alert mit yellow- Fade zu geben &#8220;Der Artikel wurde dem Warenkorb hinzugefügt.&#8221; Aber nach deinem Beitrag hier bin ich mir noch unsicherer.<br />
Was würdest du denn vorschlagen, bei einem Warenkorb der per Ajax gefüllt wird? Also wie soll man am besten so einen Warenkorb für Screenreader User zugänglich machen?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: alexander farkas</title>
		<link>http://www.protofunc.com/2009/12/30/wai-aria-epic-fail-wenn-der-screenreader-nicht-mehr-aufhoren-will-zu-plappern/comment-page-1/#comment-216</link>
		<dc:creator>alexander farkas</dc:creator>
		<pubDate>Thu, 31 Dec 2009 14:26:50 +0000</pubDate>
		<guid isPermaLink="false">http://www.protofunc.com/?p=33#comment-216</guid>
		<description>Das Löschen der setTimeout-MEthode aus dem Dokument hat sich geklärt:

http://www.w3.org/WAI/PF/comments/details?comment_id=240

Sollte aber aus anderen Gründen wieder aufgenommen werden....</description>
		<content:encoded><![CDATA[<p>Das Löschen der setTimeout-MEthode aus dem Dokument hat sich geklärt:</p>
<p><a href="http://www.w3.org/WAI/PF/comments/details?comment_id=240" rel="nofollow">http://www.w3.org/WAI/PF/comments/details?comment_id=240</a></p>
<p>Sollte aber aus anderen Gründen wieder aufgenommen werden&#8230;.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: alexander farkas</title>
		<link>http://www.protofunc.com/2009/12/30/wai-aria-epic-fail-wenn-der-screenreader-nicht-mehr-aufhoren-will-zu-plappern/comment-page-1/#comment-215</link>
		<dc:creator>alexander farkas</dc:creator>
		<pubDate>Thu, 31 Dec 2009 13:08:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.protofunc.com/?p=33#comment-215</guid>
		<description>@Martin Kliehm

ja, das hat einen riesigen Vorteil. Und ich wollte das als 4. Teil der Epic Fail-Reihe etwas genauer erklären. Es macht allerdings nichts, das vorweg zu nehmen, da dies in diesem Blog schon gefühlte zweitausendmal erklärt wurde. (Ich würde behaupten in jedem Artikel in dem die 4 Buchstaben Aria auftauchen).

Das Fokusieren bei gerade erst erschaffenen Elementen bzw. eben sichtbar gemachten Elementen funktioniert in Jaws nur, wenn dies in einem &quot;späteren Thread&quot;, als das Sichtbarmachen/Hinzufügen erfolgt. Mit Javascript kann man das ganz einfach durch setTimeout erledigen.

Wenn du das selber kurz antesten möchtest: &lt;a href=&quot;http://www.protofunc.com/scripts/jquery/focustest/hiddenfocusable-notimeout.html&quot; rel=&quot;nofollow&quot;&gt;Fokusieren ohne timeout&lt;/a&gt; und &lt;a href=&quot;http://www.protofunc.com/scripts/jquery/focustest/hiddenfocusable.html&quot; rel=&quot;nofollow&quot;&gt;fokusieren mit timeout&lt;/a&gt;. Ich habe den Test ohne timeout eben erst schnell erstellt und nur mit IE 8/FF 3.5 + Jaws 10 getestet, aber die Ergebnisse, die für die anderen Systeme, jeweils unten in der Tabelle stehen müßten meines Wissens (Erfahrung macht´s) nach stimmen.

Der hier erwähnte &lt;a href=&quot;http://www.protofunc.com/2009/10/11/der-grose-screenreader-focus-test/&quot; rel=&quot;nofollow&quot;&gt;große Fokustest&lt;/a&gt; versucht für diesen großen Unterschied auch eine Erklärung zu finden (ist natürlich eine reine Vermutung, aber klingt ziemlich plausibel).

Im Aria Best Practices Dokument gab es dazu auch mal einen Hinweis, allerdings finde ich diesen nicht mehr und ich schätze, daß er gelöscht wurde, was extrem schade ist, da wie gesagt ein typischer Fehler beim Aria-Einsatz. Den Text, welcher im Best Practices Dokument stand, konnte ich nur noch bei &lt;a href=&quot;http://wiki.codetalks.org/wiki/index.php/Docs/Keyboard_navigable_JS_widgets#Use_setTimeout_with_element.focus.28.29_to_set_focus&quot; rel=&quot;nofollow&quot;&gt;wiki.codetalks.org&lt;/a&gt; finden.

Nachtrag:
Es sei erwähnt, daß der Hinweis auf setTimeout bei wiki.codetalks nebulös von &quot;strange things&quot; - bei click events auf form controls - redet. Daher ist nicht klar, ob sie setTimeout aus denselben Gründen empfehlen, wie ich. Wenn dem nicht so ist, gibt es aber alleine schon 2 Gründe setTimeout zu nutzen.</description>
		<content:encoded><![CDATA[<p>@Martin Kliehm</p>
<p>ja, das hat einen riesigen Vorteil. Und ich wollte das als 4. Teil der Epic Fail-Reihe etwas genauer erklären. Es macht allerdings nichts, das vorweg zu nehmen, da dies in diesem Blog schon gefühlte zweitausendmal erklärt wurde. (Ich würde behaupten in jedem Artikel in dem die 4 Buchstaben Aria auftauchen).</p>
<p>Das Fokusieren bei gerade erst erschaffenen Elementen bzw. eben sichtbar gemachten Elementen funktioniert in Jaws nur, wenn dies in einem &#8220;späteren Thread&#8221;, als das Sichtbarmachen/Hinzufügen erfolgt. Mit Javascript kann man das ganz einfach durch setTimeout erledigen.</p>
<p>Wenn du das selber kurz antesten möchtest: <a href="http://www.protofunc.com/scripts/jquery/focustest/hiddenfocusable-notimeout.html" rel="nofollow">Fokusieren ohne timeout</a> und <a href="http://www.protofunc.com/scripts/jquery/focustest/hiddenfocusable.html" rel="nofollow">fokusieren mit timeout</a>. Ich habe den Test ohne timeout eben erst schnell erstellt und nur mit IE 8/FF 3.5 + Jaws 10 getestet, aber die Ergebnisse, die für die anderen Systeme, jeweils unten in der Tabelle stehen müßten meines Wissens (Erfahrung macht´s) nach stimmen.</p>
<p>Der hier erwähnte <a href="http://www.protofunc.com/2009/10/11/der-grose-screenreader-focus-test/" rel="nofollow">große Fokustest</a> versucht für diesen großen Unterschied auch eine Erklärung zu finden (ist natürlich eine reine Vermutung, aber klingt ziemlich plausibel).</p>
<p>Im Aria Best Practices Dokument gab es dazu auch mal einen Hinweis, allerdings finde ich diesen nicht mehr und ich schätze, daß er gelöscht wurde, was extrem schade ist, da wie gesagt ein typischer Fehler beim Aria-Einsatz. Den Text, welcher im Best Practices Dokument stand, konnte ich nur noch bei <a href="http://wiki.codetalks.org/wiki/index.php/Docs/Keyboard_navigable_JS_widgets#Use_setTimeout_with_element.focus.28.29_to_set_focus" rel="nofollow">wiki.codetalks.org</a> finden.</p>
<p>Nachtrag:<br />
Es sei erwähnt, daß der Hinweis auf setTimeout bei wiki.codetalks nebulös von &#8220;strange things&#8221; &#8211; bei click events auf form controls &#8211; redet. Daher ist nicht klar, ob sie setTimeout aus denselben Gründen empfehlen, wie ich. Wenn dem nicht so ist, gibt es aber alleine schon 2 Gründe setTimeout zu nutzen.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Martin Kliehm</title>
		<link>http://www.protofunc.com/2009/12/30/wai-aria-epic-fail-wenn-der-screenreader-nicht-mehr-aufhoren-will-zu-plappern/comment-page-1/#comment-214</link>
		<dc:creator>Martin Kliehm</dc:creator>
		<pubDate>Thu, 31 Dec 2009 09:59:08 +0000</pubDate>
		<guid isPermaLink="false">http://www.protofunc.com/?p=33#comment-214</guid>
		<description>Wozu das setTimeout()? Hat das irgendwelche Vorteile?

Danke,
Martin</description>
		<content:encoded><![CDATA[<p>Wozu das setTimeout()? Hat das irgendwelche Vorteile?</p>
<p>Danke,<br />
Martin</p>
]]></content:encoded>
	</item>
</channel>
</rss>
