Roe*_*len 2 javascript javascript-audio-api
当用户回答正确/错误的问题时,我的网站当前正在播放声音。但我注意到在我的平板电脑 (iPad) 和手机 (iPhone) 上,即使我将其置于静音模式,它也会播放声音。而且我不希望手机/平板电脑在用户明确将设备设置为静音模式(铃声)时播放声音。那么,我可以检测设备是否静音/静音,然后不播放任何声音吗?我在 Safari 和 Chrome 上进行了测试,它总是播放声音,而不管 Ringer 的状态如何。
编辑:如果无法阅读此信息,那么我的问题是是否有一种方法可以播放尊重用户静音偏好的声音?我正在使用 jQuery 的$("#correctsound").trigger('play'),显然这不尊重这些设置。我们是否有不同的方式来播放将这些设置考虑在内的声音?
小智 5
您的问题的简单答案是否定的。网页无法访问有关客户端的此类信息。更多信息在这里:Javascript:你能读懂系统卷吗?此外,重要的是要注意,根据Macworld 的说法,iOS 对铃声和媒体有不同的音量设置:
掌握音量调节的关键是了解您设备上的大多数声音属于以下两类之一。一般音频包括音乐和其他媒体,以及 iPhone 和所有设备上的 FaceTime 的音量。“铃声和提醒”类别不仅包括 iPhone 铃声,还包括:FaceTime 铃声;时钟应用闹钟;通知和单个应用程序警报;键盘点击;和杂项应用程序听起来像发送邮件的嗖嗖声。
换句话说,如果用户想要静音来自网页的音频,他们应该静音媒体音量。铃声音量与网页无关,因此将手机置于“静音”模式只会影响铃声音量。如果您在更改设备音量设置方面需要帮助,请查看如何在没有媒体播放时降低 iPhone 上的媒体音量?在 Apple Stack Exchange 上。