如何在MacOS上使用AppleScript获取Chrome/Safari的滚动区域位置和大小?

如何在MacOS上使用AppleScript获取Chrome/Safari的滚动区域位置和大小?,macos,applescript,uiaccessibility,javascript-automation,Macos,Applescript,Uiaccessibility,Javascript Automation,我想使用AppleScript(JXA)检索Google Chrome的滚动区域大小和位置。(我的目标是获得客户区大小) 我无法在层次结构中找到相应的UIElement 以下是JXA代码: 功能检查(obj,深度){ var indent=“.padStart(3*深度) 用于(obj中的var i){ if(obj[i]数组实例){ 检查(obj[i]) }else if(对象的obj[i]实例){ console.log(`${indent}(${obj[i].position()},${o

我想使用AppleScript(JXA)检索Google Chrome的滚动区域大小和位置。(我的目标是获得客户区大小)

我无法在层次结构中找到相应的UIElement

以下是JXA代码:

功能检查(obj,深度){
var indent=“.padStart(3*深度)
用于(obj中的var i){
if(obj[i]数组实例){
检查(obj[i])
}else if(对象的obj[i]实例){
console.log(`${indent}(${obj[i].position()},${obj[i].size()})${obj[i].class()}/${obj[i].role()}::${obj[i].name()}`)
检查(obj[i].uiElements(),深度+1)
}
}
}
var sysEv=应用程序(“系统事件”)
var app=sysEv.processs['Google Chrome']
检查(app.windows(),0)
但是,macOS可访问性检查器可以找到它:

有什么线索吗?
谢谢你的帮助

我建议你先用AppleScript解决它。这样,您只需与GUI脚本的可怕性搏斗,而不必同时与GUI脚本和JXA自身的缺陷作斗争。另外,我自己也没用过,但你可能会发现它很有用。谢谢@foo。我尝试了UI浏览器,它显示了与我完全相同的UI元素层次结构。我想我们找不到滚动区域,因为滚动区域可能属于Chrome子进程。