0

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

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

我还使用 jGrowl 框来显示正常的消息/通知。我正在使我的应用程序可访问性友好。我使用 JAWS 作为屏幕阅读器。当弹出 jGrowl 消息时,JAWS 不会读取该消息。

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

或者是否有任何 jQuery 方法通过它我知道正在显示一条 jGrowl 消息,以便我可以设置焦点或其他东西,以便屏幕阅读器读取该消息并通知用户。

提前致谢。

4

1 回答 1

0

更新

我做了一个解决方法,让 JAWS 等屏幕阅读器可以阅读 jGrowl 消息/通知。为此,我稍微修改了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:""))

现在添加一个'角色'属性分配'警报'作为该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:""))

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

于 2017-04-19T18:51:46.773 回答