对于我的应用程序MuteSpotifyAds,我不会添加自动启用“私人会话”模式的功能。
为此,我不会在OSX菜单栏的菜单toggle
中切换菜单栏项目$("#button_ID").click(function(){
$("#element1_id").toggleClass("display_none_class");
$("#element2_id").toggleClass("display_none_class");
});
。我使用下面的applescript起作用了:
来源:https://stackoverflow.com/a/16497564/6286431
Private Session
问题是我必须检查复选框是否已被选中,否则我将禁用Spotify
。
是否可以检查菜单复选框是否已选中?
我已经尝试过this,但似乎仅适用于实际窗口中的复选框。
如果您有不使用applescript的解决方案,那也很好!
答案 0 :(得分:2)
是否已选中菜单项的信息在菜单项的属性“ AXMenuItemMarkChar”中
tell application "System Events" to tell process "Spotify"
tell menu bar item 2 of menu bar 1 -- AppleScript indexes are 1-based
tell menu item "Private Session" of menu 1
set isChecked to value of attribute "AXMenuItemMarkChar" is "✓"
if not isChecked then click it
end tell
end tell
end tell