谁能用这段代码向我解释$mdLiveAnnouncer

module.controller('AppCtrl', function($mdLiveAnnouncer) {
  // Basic announcement (Polite Mode)
  $mdLiveAnnouncer.announce('Hey Google');

  // Custom announcement (Assertive Mode)
  $mdLiveAnnouncer.announce('Hey Google', 'assertive');
});

最佳答案

根据他们的documentation


  $ mdLiveAnnouncer服务在内部用于组件,以提供适当的可访问性。
  $ mdLiveAnnouncer.announce(消息,礼貌);
  
  向支持的屏幕阅读器宣布消息。


当您说它什么都不做...您是否尝试过在具有受支持的屏幕阅读器的设备上运行它?

根据GitHub上的文档(上述文档中链接):


  
  没有非零超时,基于IE11的JAWS和NVDA都不会宣布任何内容。
  使用具有NVDA或JAWS的Chrome和IE11,如果不清除并使用非零延迟,将不会再次读取重复的(相同的)消息。
  (在撰写本文时使用JAWS 17)。

关于javascript - Angular Material 中的mdLiveAnnouncer是什么以及它如何工作?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42946964/

10-13 01:21