Поэтому я хотел сделать небольшой скрипт, который, например. отключает звук всех вкладок, URL-адрес которых содержит google.com. Я хотел сделать что-то вроде этого:
tell application "Google Chrome"
set theWindows to windows of application "Google Chrome"
repeat with theWindow in theWindows
set theTabs to (tabs of theWindow whose URL contains "google.com")
repeat with theTab in theTabs
tell theTab
mute
end tell
end repeat
end repeat
end tell
Но если вы попытаетесь запустить это, то вскоре заметите, что Applescript считает mute
переменной. Я также пробовал mute tab
, но это тоже не работает.
Я сомневаюсь, что вы можете сделать это небрежно, но (при условии, что chrome работает аналогично Vivaldi), вы, вероятно, могли бы использовать сценарии пользовательского интерфейса, чтобы щелкнуть правой кнопкой мыши вкладку и отключить ее. С помощью более стандартных средств вы, вероятно, могли бы использовать applescript, чтобы определить, какие вкладки следует передать этой процедуре.
@Mockman Я хочу уйти от сценариев пользовательского интерфейса, так как это грубая сила, и получить правую вкладку, чтобы щелкнуть правой кнопкой мыши, вероятно, сложно, а затем щелкнуть по ней с помощью сторонних утилит оболочки еще сложнее. Я просто хотел спросить, есть ли лучший способ сделать это.
Точно так же я отношусь к сценариям пользовательского интерфейса. Я нахожу его утомительным для работы. Но если Chrome не предлагает управление воспроизведением мультимедиа с помощью сценариев на своих вкладках, в чем я сомневаюсь, у вас не так много вариантов. В Vivaldi можно отключить звук всех фоновых вкладок или установить приоритет для активной вкладки. Если в Chrome есть похожие настройки, это, вероятно, максимально близко.
@Mockman Я нашел решение: в Chrome есть элемент строки меню с именем
Tab
, в котором есть элемент с именемMute site
. Я знаю, что есть способ выбрать параметры из строки меню, но код, который я написал (tell application "Google Chrome" to tell active tab of front window to select (first item of menu "Tab" whose title is equal to "Mute site"
), не работает, поскольку, по-видимому, элементы меню не понимают выбор. Если вы знаете, как это сделать, не стесняйтесь опубликовать это как ответ.Внутри блока сообщений системных событий:
tell process "Google Chrome" to menu item "Mute site" of menu "Tab" of menu bar 1
. На этой странице есть подробная информация о получении пунктов меню и т. д. developer.apple.com/library/archive/documentation/…@Mockman Вы хотите опубликовать это как ответ, чтобы я мог его принять?