我正在努力想出一个我可以运行的苹果脚本,以便填写我每天都做的一些网页表格(JIRA门票表格)。
我创建了这个JS脚本,当我在Chrome控制台上运行它时,它正在运行:
document.getElementById('summary').value="Inserted text"
所以现在我创建了我的AppleScript以便能够从外部执行它但是我总是得到“语法错误。预期的行尾等,但发现了未知的令牌。”
这是代码:
tell application "Google Chrome"
execute javascript document.getElementById('summary').value="Inserted text" in document 1
end tell
我知道告诉应用程序有效,但我不明白如何解决语法错误并使AppleScript工作
答案 0 :(得分:1)
in document 1
语法适用于Safari。
使用Google Chrome浏览器,您应该与目标active tab
的{{1}}对话,例如:
window
或者将窗口编号替换为tell application "Google Chrome"
tell active tab of window 1
execute javascript "document.getElementById('summary').value = 'Inserted text';"
end tell
end tell
。
答案 1 :(得分:1)
这适用于我使用最新版本的Sierra
tell application "Google Chrome"
execute front window's active tab javascript "document.getElementById('summary').value = 'Inserted text';"
end tell
OR - 仅压缩到一行代码
tell application "Google Chrome" to execute front window's active tab javascript "document.getElementById('summary').value = 'Inserted text';"
我选择此代码的原因是因为以下示例..
在谷歌浏览器中,我开始使用一个窗口,然后是一个带有4个选项卡的窗口。下一个, 将这些标签拆分为4个单独的窗口。在此之后,我选择右下方窗口使其成为“活动窗口”。认为,正确的右下窗口现在是“窗口1”......我会错的(根据以下脚本的结果)
如果我在“窗口1”中运行脚本,它将在浏览器的左上角窗口运行,当我只有一个带有一个选项卡的窗口时,它就是窗口1。它保留了初始值。问题是我不想在
上运行我的脚本的窗口所以显然窗口1不一定是前窗