跳至主要内容
版本:22.5.0

Accessibility.snapshot() 方法

捕获无障碍树的当前状态。返回的对象表示页面的根可访问节点。

签名:

class Accessibility {
snapshot(options?: SnapshotOptions): Promise<SerializedAXNode | null>;
}

参数

参数类型描述
optionsSnapshotOptions(可选)

返回值

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;
}