【问题标题】:How do I make a Safari window active using AppleScript (elegantly)?如何使用 AppleScript(优雅地)激活 Safari 窗口?
【发布时间】:2011-04-15 21:10:31
【问题描述】:

虽然可以使用 System Events 模拟 command-shift-` 来更改 Safari 中的窗口,但 AppleScript 有没有更好的方法来做到这一点?我可以更改 Safari 窗口的索引,这会更改它们在屏幕上的顺序,但不会使它们处于活动状态。假设您有两个包含 about:blank 的 Safari 窗口——您如何将后面的窗口放到前面并使其处于活动状态?

当然,command-shift-` 有效,所以也许只需要一种方法来给这只猫剥皮。

【问题讨论】:

  • 如何更改索引?我可以看到那个代码吗?
  • Ack,我删除了它,但是 Safari 窗口元素有一个可读写的索引变量。您可以抓取 Safari 应用程序,抓取它的窗口,然后告诉一个窗口将其索引设置为 1。这会将其带到前面,而无需更改焦点窗口。

标签: applescript


【解决方案1】:

我还注意到更改索引确实会重新排序窗口,但新窗口实际上并没有出现在前面。通过玩耍,我发现您可以通过使用“可见”属性来解决这个问题......

tell application "Safari"
    set theWindows to windows
    set win2 to item 2 of theWindows
    tell win2
        set visible to false
        set visible to true
        set index to 1
    end tell
end tell

【讨论】:

  • 这很酷。窗口级别没有可设置的“焦点”参数,我几乎感到震惊。
猜你喜欢
  • 1970-01-01
  • 2012-05-09
  • 2011-10-04
  • 2019-05-03
  • 2018-04-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多