屏幕 reader 可以像 JAWS 一样读取 jGrowl 消息吗?

Can screen reader like JAWS read jGrowl message?

在我的网络应用程序中,每当发生任何错误时,都会通过 jGrowl 框显示该错误消息:

$.jGrowl("This is an error message.");

我还使用 jGrowl 框显示正常 messages/notifications。我正在使我的应用程序易于访问。我正在使用 JAWS 作为屏幕 reader。当 jGrowl 消息弹出时,JAWS 没有读取该消息。

如何让 JAWS 读取该消息?任何解决方法?

或者是否有任何 jQuery 方法可以让我知道正在显示 jGrowl 消息,以便我可以设置焦点或其他内容,以便屏幕 reader 读取该消息并通知用户。

提前致谢。

更新:

我做了一个解决方法,使 jGrowl messages/notifications 可以像 JAWS 一样被屏幕 reader 读取。为此,我稍微修改了 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:""))

现在添加一个“role”属性,将“alert”赋值为 div 中的值。您还可以添加一个 ARIA 标签,该标签将包含屏幕 reader.

阅读的消息

所以在改变之后,它看起来像这样:

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:""))

希望这对您有所帮助。它对我有用:)