我一直在尝试在SWF10运行时上添加一些OpenLaszlo应用程序的可访问性功能。基本上我一无所获。我用来测试的屏幕阅读器在Mac上为“ VoiceOver”,但拒绝注意到我的Flash小部件,但确实注意到了其他非OpenLaszlo小部件。
我已经将这些属性添加到canvas元素中,尽管我认为只有“ accessible”属性才可以。
aaactive =“ true” aaname =“ MP3录音机” accessible =“ true” focusable =“ true”
并且在laszlo中,javascript嵌入代码已将可访问性设置为“ true”。
我刚刚注意到在使用OL49进行编译时,控制台中会显示一条警告消息,内容为
“警告:此运行时不支持可访问性。”
这似乎很糟糕,但也不太可能。所以我做了一些研究,并在此页面上
http://labs.openlaszlo.org/trunk-nightly/docs/developers/architecture.html
他们说:“ [可访问性]仅在在Internet Explorer下运行Flash Player的OpenLaszlo目标中可用。”
好吧,我开始使用IE8在Windows XP上运行它,并得到了相同的错误消息。当我查看生成该警告的画布源代码时,它仅表示如果将“ accessible”属性设置为true将会失败。
所以我的问题是,SWF运行时在OpenLaszlo(4.9或更高版本)中的可访问性状态如何?它行得通吗?
贾斯汀
最佳答案
基于ActionScript 3的运行时(SWF9,SWF10,SWF11)和可访问性
OpenLaszlo JIRA问题LPP-7071 swf9: implement accessibility于2008年9月创建,似乎没有人为基于ActionScript的运行时(SWF9,SWF10等)的可访问性做任何工作。
我检查了ActionScript 3 runtime LzSprite.as源中的可访问性提示,这是我发现的内容:
public function setAccessible(accessible:*) :void {
trace('LzSprite.setAccessible not yet implemented');
}
这意味着,当前不支持SWF10的可访问性。
Adobe已发布文档为Best practices for accessibility withAdobe Flex 4的文档,遵循该文档中描述的方法,可以将文档可访问性支持添加到ActionScript 3内核中,但这将是社区的努力。
在Adobe blog post的注释部分中,对Flash Player 11和OS X上的VoiceOver的可访问性功能进行了一些讨论。
Flash 8和DHTML运行时
我在这里添加了一些有关SWF8和DHTML运行时可访问性支持的信息,尽管您没有要求它。当其他开发人员找到此页面时,这可能会很有用。
OpenLaszlo Wiki page on Accesibility是绝对过时的,自2006年以来就没有进行过更新。我记得过去几年在可访问性支持方面所做的许多工作都是围绕JAWS对Flash 8和DHTML的支持,但是我从未从事过任何工作。
4.2 release notes mention JAWS support for Flash 8作为新功能:
此版本增加了JAWS阅读器对单选框的可访问性,
树和按钮,只要它们在
基本的Flash 8实现。建议使用4.2.0.4版本
仅适用于需要在Flash 8和
无法升级到当前的4.X版本,
包含辅助功能支持以及许多其他改进。
基于LPP-8248的基础,JAWS支持也已添加到DHTML运行时中。但是,仅在IE7上进行过测试。