在我的网络应用中,每当发生任何错误时,都会通过jGrowl框显示该错误消息:
$.jGrowl("This is an error message.");
此外,我使用jGrowl框显示正常的消息/通知。我正在使我的应用程序辅助功能友好。我使用JAWS作为屏幕阅读器。当弹出jGrowl消息时,JAWS不会读取该消息。
如何让JAWS读取该消息?任何解决方法?
或者是否有任何jQuery方法可以让我知道正在显示jGrowl消息,以便我可以设置焦点或某些内容,以便屏幕阅读器读取该消息并通知用户。
提前致谢。
答案 0 :(得分:0)
<强>更新强>:
我做了一个解决方法,使jGrowl消息/通知可以被像JAWS这样的屏幕阅读器读取。为此我稍微修改了 jquery.jgrowl.min.js 文件。
首先在jquery.jgrowl.min.js文件中查找以下行(顺便说一下,它在渲染jGrowl弹出窗口中起着重要作用):
var t=e("<div />").addClass("jGrowl-notification "+n.themeState+" ui-corner-all"+(void 0!=n.group&&""!=n.group?" "+n.group:""))
现在添加一个&#39; 角色&#39;属性分配&#39; 提醒&#39;作为该div中的值。您还可以添加 ARIA标签,其中包含要由屏幕阅读器读取的消息。
因此,在更改后,它看起来像这样:
var t=e("<div role='alert' />").attr('aria-label',t.message).addClass("jGrowl-notification "+n.themeState+" ui-corner-all"+(void 0!=n.group&&""!=n.group?" "+n.group:""))
希望这有帮助。它对我有用:)