我希望Applecript一直向上滚动窗口。
我已经尝试过向上翻页键,主页键,我尝试使用窗口的内置滚动功能查找滚动方式,但到目前为止我还是无法移动滚动条这个位置。
答案 0 :(得分:8)
答案 1 :(得分:4)
使用浏览器,您也可以使用JavaScript:
tell application "Safari" to tell document 1
do JavaScript "window.scroll(0,0)"
end tell
tell application "Google Chrome" to tell active tab of window 1
execute javascript "window.scroll(0,0)"
end tell
答案 2 :(得分:1)
发送击键的替代方法是使用GUI scripting。
警告:虽然GUI脚本更强大比发送应用程序的给定版本的击键更改,但应用程序布局中的更改< strong>未来版本可能会破坏您的代码。
此外:
GUI脚本要求启用对辅助设备的访问;启用需要管理员权限:
tell application "System Events" to set UI elements enabled to true
(必需的管理员权限)以编程方式,系统范围完成tell application "System Events" to get UI elements enabled
报告是否启用了访问权限。 确定正确的UI元素目标可能非常重要且乏味;使用Accessibility Inspector
附带的Xcode
实用程序有帮助。此实用程序报告的类名对应于UI element
字典中包含的System Events
类;例如,AXSplitGroup
对应splitter group
。
以下将Safari 6.0.3
的前窗滚动到顶部(必须启用辅助设备访问):
tell application "System Events"
# Use Accessibility Inspector to find the desired target.
tell front window of process "Safari"
tell scroll bar 1 of scroll area 1 of group 1 of group 1 of last group
set value of attribute "AXValue" to 0 # Scroll to top.
end tell
end tell
end tell
更新:提醒一下,对于给定版本的应用,此类脚本可以正常运行,但必须更改Safari 8.0.4
的代码:
tell application "System Events"
# Use Accessibility Inspector to find the desired target.
tell front window of process "Safari"
tell scroll bar 1 of scroll area 1 of group 1 of group 1 of group 2
set value of attribute "AXValue" to 0 # Scroll to top.
end tell
end tell
end tell