跳到主要内容

Accessibility

Accessibility 类提供了检查 Chromium 无障碍树的方法。无障碍树被辅助技术使用,例如 屏幕阅读器开关

无障碍访问是一个非常平台特定的东西。在不同的平台上,可能有不同的屏幕阅读器,它们可能有非常不同的输出。

Chromium、Firefox 和 WebKit 的渲染引擎都有“无障碍树”的概念,然后将其转换为不同的平台特定 API。Accessibility 命名空间提供对此无障碍树的访问。

当从内部浏览器 AX 树转换为平台特定的 AX 树或被辅助技术本身转换时,大多数无障碍树会被过滤掉。默认情况下,Playwright 尝试近似这种过滤,仅公开树的“有趣”节点。


已弃用

SnapshotAsync

在 v1.9 之前添加 accessibility.SnapshotAsync
已弃用

此方法已弃用。如果您需要测试页面无障碍访问,请使用其他库,例如 Axe。请参阅我们的 Node.js 指南以了解与 Axe 的集成。

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

注意

Chromium 无障碍树包含在大多数平台和大多数屏幕阅读器上未使用的节点。Playwright 也会丢弃它们以获得更易于处理的树,除非 InterestingOnly 设置为 false

用法

转储整个无障碍树的示例

var accessibilitySnapshot = await page.Accessibility.SnapshotAsync();
Console.WriteLine(System.Text.Json.JsonSerializer.Serialize(accessibilitySnapshot));

记录焦点节点的名称的示例

var accessibilitySnapshot = await page.Accessibility.SnapshotAsync();
Console.WriteLine(System.Text.Json.JsonSerializer.Serialize(accessibilitySnapshot));

参数

  • options AccessibilitySnapshotOptions? (可选)
    • InterestingOnly bool? (可选)#

      从树中修剪不有趣的节点。默认为 true

    • Root ElementHandle? (可选)#

      快照的根 DOM 元素。默认为整个页面。

返回值