我想在特定选项卡上执行控制台命令,并接收布尔回答,即该选项卡是否正在播放音频。(通常在标签标题附近用小扬声器图标表示)
能做到吗?
您可以使用chrome.tabs API来检测Chrome标签页是否正在播放带有Chrome扩展程序的音频。API提供了一个布尔audible
属性,如下所述:
该选项卡是否在过去的几秒钟内发出了声音(但是如果也将其静音,则可能不会听到)。等效于扬声器音频指示器是否正在显示。
来源: https ://developer.chrome.com/extensions/tabs
由于它是从当前页面的上下文中运行的,因此无法从控制台本身访问选项卡。在Chrome扩展程序的背景页面中,您可以访问所有标签,并可以使用上述API查询它们。您的扩展程序可以简单地提供一个面板,该面板显示所有打开的选项卡的列表以及一个标记,用于说明音频是否正在播放。
另外:如果您只想使用Chrome控制台在当前标签中快速静音HTML5音频/视频,则可以运行以下命令($$
等效于document.querySelectorAll()
):
$$('video', 'audio').forEach((element) => element.muted = true);