跳至主要内容

无障碍访问

Accessibility类提供了检查Chromium无障碍功能树的方法。无障碍功能树被辅助技术如屏幕阅读器切换设备所使用。

无障碍访问是一个非常依赖平台的功能。在不同的平台上,存在不同的屏幕阅读器,它们可能产生截然不同的输出。

Chromium、Firefox和WebKit的渲染引擎都有一个"可访问性树"的概念,随后会被转换为不同平台特定的API。可访问性命名空间提供了对这个可访问性树的访问。

在从内部浏览器AX树转换为平台特定的AX树或由辅助技术本身处理时,大部分可访问性树会被过滤掉。默认情况下,Playwright尝试近似这种过滤,仅暴露树中"有趣"的节点。


已弃用

SnapshotAsync

Added before v1.9 accessibility.SnapshotAsync
Deprecated

此方法已弃用。如需测试页面可访问性,请使用其他库如Axe。关于与Axe的集成,请参阅我们的Node.js指南

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

note

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? (optional)
    • InterestingOnly bool? (可选)#

      从树中修剪掉无趣的节点。默认为 true

    • Root ElementHandle? (可选)#

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

返回