我正在使用https://material.angular.io/components/tabs/overview中的 mat-tab-group。(使用 ng-template 的复杂标签方法)
选项卡包含选项卡的名称和关闭选项卡的按钮。
每当我关注选项卡时,它都会读取名称的 aria-labels 和一个按钮。当标签被焦点时,它应仅读取名称,而不应读取关闭按钮ARIA标签。当标签当前聚焦然后点击标签将聚焦关闭按钮,此时它应该读取关闭按钮 aria 标签。
这个怎么做 ?
代码:
<mat-tab-group dynamicHeight [(selectedIndex)]="activeTabIndex" (selectedTabChange)="changetab($event)">
<mat-tab *ngFor="let tab of Tabs; let i = index" [label]="tab.name" [attr.sortColumn]="tab.sortBy" [attr.sortOrder]="tab.sortOrder"
[attr.viewId]="tab.id" [attr.viewObjectID]="tab.viewObjectId" attr.aria-label="{{tab.name}}">
<ng-template mat-tab-label>
<div class="tab-container">
<div class="somestyle">
<span class="tab-name" [matTooltip]="tab.name">{{tab.name}}</span>
</div>
<button mat-icon-button tabindex="0" id="{{tab.id}}" class="close-btn" (keyup)="closeTab($event,view)" (click)="closeTab($event,view)" attr.aria-label="{{closetab}}">
<mat-icon class="material-icons">cancel</mat-icon>
</button>
</div>
</ng-template>
</mat-tab>
这个的输出:我正在使用“jaws”作为屏幕阅读工具。当我们关注选项卡时,它会读取选项卡名称和关闭按钮标签( attr.aria-label="{{tab.name}}" 和 attr.aria-label="{{closetab}}")。