如何使用 AppleScript(优雅地)激活 Safari 窗口?

发布于 2024-11-01 07:11:16 字数 239 浏览 1 评论 0原文

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

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

While one can simulate command-shift-` using System Events to change windows in Safari, is there no better way to do this with AppleScript? I can change the index of Safari's windows, this changes their ordering on the screen but does not make them active. Suppose you have two Safari windows containing about:blank -- how could you bring the one in the back to the front and make it active?

Granted, command-shift-` works, so maybe there only needs to be one way to skin this cat.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

嘦怹 2024-11-08 07:11:16

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

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

I also noticed that changing the index does reorder the windows however the new window does not actually come to the front. By playing around I found you can fix that by playing with the "visible" property...

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
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文