问题标签 [javascript-automation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 从另一个 JSAppleScript 运行另一个 JS AppleScript 时出现权限错误
我正在尝试将我的 .applescript 文件分成不同的文件来整理。
我有一个名为的 JS AppleScript 文件Test.applescript
,它尝试运行 JS AppleScript 文件Group Tracks Dependency.applescript
,我想要做的是将参数传入依赖脚本并从中获取返回值。(它创建了一组 iTunes 曲目数组)。
测试.applescript
组跟踪 Dependency.applescript
当我尝试运行测试脚本时,出现此错误(第 5 行是该app.doShellScript
行):
有没有办法解决这个问题?我还应该注意,我希望其他人将来能够下载这些脚本并在他们自己的 iTunes 库上运行它们(虽然目前它对用户不友好)。
如果没有办法解决这个问题,那么导入另一个 JS AppleScript 文件会起作用吗?
safari - 如何使用 JavaScript for Automation (JXA) 最大化 Safari 窗口?
我正在寻找一种使用JavaScript for Automation (JXA)最大化 Safari 窗口的方法。
我可以打开 Safari 并将窗口放在前面,但我找不到全屏打开它的方法。
javascript - JXA 和 .length
我正在尝试使用 automator 将我的旧 javascript 程序变成 Mac 上的服务。当我使用我的代码时,它不起作用。我已经检查了我能做的,我发现我遇到的最基本的问题是 .length 来自 javascript 的属性不起作用。这个简单的程序没有返回它应该返回的内容。它什么也不返回:
function run(input) {
var ina = 'hello';
var newn = ina.length;
return newn;
}
macos - 如何使用 JavaScript for Automation (JXA) 在特定屏幕/显示器上打开应用程序?
我想使用JavaScript for Automation (JXA)在两个不同的屏幕/显示器上打开两个应用程序,这怎么可能?
我能够打开应用程序,但我找不到控制它应该在哪里打开的方法。
macos - 使用 JXA 重新排序智能播放列表(使用 iTunes 的 AppleScript JS)
我正在尝试制作一个将重新排序智能播放列表的 AppleScript(在 JS 中)。
我目前可以重新排序非智能播放列表track.move({to: playlist});
(因此我可以将播放列表中的任何曲目移到底部),但这似乎不适用于智能播放列表,因为我收到此错误;Error: File permission error
. 这是有道理的,因为您不能只将曲目添加到智能播放列表中;它的内容基于一组规则。
有没有办法重新排序智能播放列表?
javascript-automation - 如何在 JXA 中使用 POSIX 路径
在 AppleScript 中,我经常需要在文件之间转换为 POSIX 路径和 AppleScript 的本机文件别名。
这样做的方法是通过标准添加中的 POSIX File 类:
我如何在 JXA 中进行这些强制转换/转换?我试过了
但我只得到
第 4 行错误:错误:POSIXFile 不是应用程序 «Appname» 的有效类
javascript - 使用 Javascript 实现自动化的 setTimout
我尝试使用 awindow.setTimeout
但在运行时出现错误:
第 182 行错误:TypeError: window.setTimeout 不是函数。(在
,
window.setTimeout
未定义) (-2700)
有人能帮我吗 ?
automator - 使用 JXA 从选定文本/突出显示的文本中获取字符串
我是这里的晚餐新手,无论是 Javascript 还是 JXA,如果我提出一些愚蠢的问题,请原谅我。但是我正在尝试找出一种方法来使用 JXA - JavaScript for Automation 从突出显示的文本中获取字符串,因为自从优胜美地以来,可以在 Automator 中识别 Javascript,我想我可以用这些来做一些事情:
window.getSelection
在:
此代码不是我的,有人发布了此代码。但是我发现我不能在 Automator 中使用window
ordocument
来更改 Mac OS,所以有人可以告诉我如何将此 Javascript 代码转换为 Automator 可以理解的 JXA 吗?
非常感谢!
javascript - 寻找在浏览器和节点之外工作的 JS 框架
我正在寻找一个可以在没有浏览器和 Node.js 的情况下工作的 JavaScript 框架。我需要一个系统来组织一些规模不断增长的 JS AppleScript,所以我正在寻找像 AngularJS 的工厂、服务等这样的东西。
因为我只是在寻找像 AngularJS 这样的东西的一小部分,所以我尝试自己制作一个是没有问题的。我相信这会很有趣:)。但是那里有什么已经存在的东西吗?
javascript - Javascript for Automation (JXA) “whose()”中的比较/丰富查询
如果我想查看我的 OS X 日历(以前称为“iCal”)以查找摘要为“午餐”的事件,我可以执行以下操作:
即使考虑到这只搜索第一个日历的事实,它也非常、非常、非常慢,因为每个 iCal 事件都需要转换为 Javascript 对象才能运行。这是一个更快的公式:
这非常适合精确匹配summary == 'Lunch'
。但是诸如endDate: > new Date()
or之类的比较summary: /lunch/i
呢?是否可以将本机 (ObjC) 代码传递给 who() 选择器?是否有任何文件可以提供whose()
帮助?