2

如何在 JavaScript 中通过 启动应用程序osascript

我一直在玩一些示例,这些示例可以在 Internet 上找到并且我可以让它们工作,但是如果尚未启动以自动化为目标的应用程序,我会收到以下错误:

2015-04-02 10:43:34.749 js.sh[3434:57612] warning: failed to get scripting definition from /Applications/Safari.app; it may not be scriptable.

如果 Safari 已经打开,下面的例子就像一个魅力。

#!/usr/bin/osascript -l JavaScript

var Safari = new Application("/Applications/Safari.app");

Safari.activate;

window = Safari.windows[0];

tab = Safari.Tab({url:"http://www.dr.dk"});
window.tabs.push(tab);
window.currentTab = tab;

我以为activate方法是唯一的,但似乎我忽略了一些东西。

4

1 回答 1

2

您的脚本在我的机器上运行良好,并且 Safari 启动。要将应用程序置于最前面,您需要更改此行:

Safari.activate;

对此:

Safari.activate();

您必须将激活命令作为函数调用(使用括号)。

于 2015-06-22T19:52:49.783 回答