Accessibility.snapshot() 方法
捕获无障碍树的当前状态。返回的对象表示页面的根无障碍节点。
签名
class Accessibility {
snapshot(options?: SnapshotOptions): Promise<SerializedAXNode | null>;
}
参数
|
参数 |
类型 |
说明 |
|---|---|---|
|
options |
(可选) |
返回值:
Promise<SerializedAXNode | null>
表示该快照的 AXNode 对象。
备注
注意 Chrome 无障碍树包含在许多平台和大多数屏幕阅读器上都不会用到的节点。Puppeteer 也会丢弃它们,以便更轻松地处理树,除非将 interestingOnly 设置为 false。
示例 1
转储整个无障碍树的示例:
const snapshot = await page.accessibility.snapshot();
console.log(snapshot);
示例 2
记录焦点节点名称的示例:
const snapshot = await page.accessibility.snapshot();
const node = findFocusedNode(snapshot);
console.log(node && node.name);
function findFocusedNode(node) {
if (node.focused) return node;
for (const child of node.children || []) {
const foundNode = findFocusedNode(child);
return foundNode;
}
return null;
}