- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 OS X JavaScript for Automation (JXA),并且我希望能够捕获“开放位置”Apple 事件。
每http://www.macosxautomation.com/applescript/linktrigger/ ,我已经设置了一个客户 URL 处理程序。我该如何做相当于
on open location this_URL
...
end open location
与JXA?我尝试了以下所有操作,但无法执行其中任何一个:
app = Application.currentApplication();
app.includeStandardAdditions = true;
function run() {
app.displayDialog(JSON.stringify(arguments));
}
function openLocation() {
app.displayDialog(JSON.stringify(arguments));
}
function openDocuments() {
app.displayDialog(JSON.stringify(arguments));
}
function onOpenLocation() {
app.displayDialog(JSON.stringify(arguments));
}
Apple 的 JXA 文档 (https://developer.apple.com/library/mac/releasenotes/InterapplicationCommunication/RN-JavaScriptForAutomation/Articles/OSX10-10.html#//apple_ref/doc/uid/TP40014508-CH109-SW15) 没有讨论如何处理开放位置事件。我的脚本将被打开,因为如果我将其添加到函数之外,我可以收到一条警报来显示。我只是无法让函数执行并在 URL 中传递。
我正在通过一个 AppleScript 处理程序来解决这个问题,然后调用我的 JXA 代码,但这肯定不太理想。
我在 JXA Cookbook ( https://github.com/dtinth/JXA-Cookbook ) 中也没有看到任何关于此的内容。
最佳答案
这个问题已经很老了,但对于任何现在或 future 的 Google 访问者来说,正确使用的函数名称是 GURLGURL
(不,我不是在开玩笑)。您的函数签名应如下所示:
#!/usr/bin/env osascript -l JavaScript
function GURLGURL(url) {
const App = Application.currentApplication();
App.includeStandardAdditions = true;
App.doShellScript(`echo ${url} > ~/Downloads/url-arg.txt`);
return true;
}
我在阅读this archived developer document后发现了这一点,然后使用控制台应用程序探测我的 JXA 脚本的 applet
进程。分派(dispatch)的消息是 GURLGURL
,如 get URL 中所示。
为 Apple 为最好的 AppleScript 版本策划最糟糕的开发者体验而干杯。
关于macos - 使用 OS X JavaScript for Automation (JXA) 监听 "open location"Apple 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34504937/
我不知道如何将以下 AppleScript 转换为 JXA(Mac OS X Yosemite 下的自动化 JavaScript): tell application id "com.omnigrou
我是 JXA 脚本编写的新手,但我正在尝试对当前工作中使用的一些旧脚本进行故障排除。他们循环浏览 InDesign 文档并基于它创建多个 PDF。以前,它们将存储在名为“~/PDFExports”的文
我在 ScriptEditor 中使用 JavaScript 时遇到困难 AppleScript 通过这样的路径将图像复制到剪贴板 set image to POSIX file ("/Users/l
我试图区分 iTunes 播放列表是文件夹还是非文件夹。 在AppleScript中似乎有两种方法可以做到这一点: 我可以获取所有文件夹播放列表并从用户播放列表中单独处理它们: set userPla
在 AppleScript 中,您可以: do shell script "echo 'I am (G)root'" with administrator privileges 对不起。无论如何,可以
我正在尝试使用 JXA 访问名为 Papers3 的应用程序中对象的属性。我是 JXA 的新手,事实证明这很有挑战性,尤其是因为缺少文档。 这是我要查看的对象的字典截图 我正在尝试获取应用中当前显示的
我一直在使用 Apple 的脚本编辑器编写 JXA 脚本。本质上,我想浏览我的收件箱文件夹并将超过 44 天的邮件移动到存档文件夹。我能够找到帐户、我的收件箱和存档“邮箱”,但我终究无法弄清楚如何将该
JXA及其内置的objc桥通过Foundation对象自动公开$框架中的枚举和常量;例如: $.NSUTF8StringEncoding // -> 4 但是,在未自动导入的低级api中也有一些有用
我正在尝试列出 JXA 对象的所有方法。我已经尝试了几种在浏览器中使用 JavaScript 的方法,但都没有奏效: >> Object.getOwnPropertyNames(Application
在哪里可以找到包含所有可用类、函数和参数的 JXA 文档?到目前为止发现只是随机代码示例和简短教程。 最佳答案 您可以在各种 SDEF(在脚本编辑器中,菜单 File > Open > Diction
我试图在 Keynote 中查找/替换有问题的字体,并发现 this script使用 JXA 更改字体,但需要扫描每个字符和文本对象以查找有问题的字体。 我已尝试使用此方法启动,但条件不起作用。救命
在 AppleScript 中,您可以执行以下操作: set username to short user name of (system info) set computername to host
我最近了解到存在用于自动化的 JavaScript。对我来说更有趣的是调用 Objective-C API 的能力,在 JavaScript 中子类化 Objective-C 类,以及将 JavaSc
我在 OS/X 10.11.5 上使用以下 JXA(自动化 JavaScript)代码: function createFolder(path, createIntermediateDirectori
如果我有一个带有 JXA 源代码的字符串变量,有没有办法从 swift 运行它? NSAppleScript 似乎只适用于 AppleScript 源代码。 最佳答案 这是一个示例,展示了如何使用 S
使用AppleScript,我们可以轻松地显示带有自定义图标的对话框: display dialog "Test" with icon POSIX file "{{path_to_our_icon}}
我正在尝试将一些 Applescript (AS) 转换为 BBedit 的 Javascript (JXA)。 敲掉一些铁锈是一件有趣的小事,但我被难住了。使用 AS,我可以将插入点设置到 BBEd
请告诉我如何在应用程序窗口中单击点坐标?我尝试使用 JXA 技术在 OSX 10.10 上使我的应用程序 UI 自动化。在文档中我发现可以使用点击事件。我是 JXA 的初学者,无法找到如何调用电话。我
我已经尝试解决这个问题一段时间了,想知道您是否可以提供帮助。 使用 AppleScript,系统事件应用程序中有两个隐藏功能可用,它们允许您按下一个键(在完成其他操作(如单击)时保持按下),然后再次按
请告诉我如何在应用程序窗口中单击点坐标?我尝试使用 JXA 技术在 OSX 10.10 上使我的应用程序 UI 自动化。在文档中我发现可以使用点击事件。我是 JXA 的初学者,无法找到如何调用电话。我
我是一名优秀的程序员,十分优秀!