angularjs - Angular Material 设计 md-switch 在选项卡中不起作用

标签 angularjs material-design

在选项卡中放置开关( md-switch 指令)时,会引发 aria 错误

ARIA:可访问性所需的属性“aria-label ”在节点上丢失: ...

无论是否存在 aria 标签,都会发生这种情况。如果开关移到选项卡之外,它会按预期工作。

plunker 显示问题
http://plnkr.co/edit/FmZAyLBpzhURbdZuuhQK?p=preview

<div ng-app="app" ng-controller="ctrl" >
    <md-tabs md-selected="selectedIndex">
        <md-tab id="tab1">Item One</md-tab>
    </md-tabs>
    <ng-switch on="selectedIndex" class="tabpanel-container">
        <div role="tabpanel" id="tab1-content" ng-switch-when="0">
            <div>
                <md-switch aria-label="toggle" ng-model="data.switch">Switch : {{ toggle }}</md-switch>
            </div>
        </div>
    </ng-switch>
</div>

<script>
    var app = angular.module('app', ['ngMaterial']);

    app.controller("ctrl", function ($scope) {
        $scope.toggle = false;
        $scope.selectedIndex = 0;
    });
</script>

最佳答案

那很奇怪..
此问题似乎已通过最新版本的 Angular Material (版本 0.6.1-master-0767813)解决。

这是 plunker:http://plnkr.co/edit/chEaf9i50mIiThp0Jloq?p=preview

我只是将脚本更改为最新版本:

<link rel="stylesheet" href="//rawgit.com/angular/bower-material/master/angular-material.css">
<script src="//rawgit.com/angular/bower-material/master/angular-material.min.js"></script>

您还需要将 ng-model 更改为切换值。所以而不是使用
ng-model="data.switch"

你需要使用
ng-model="toggle"

指向 $scope.toggle。

关于angularjs - Angular Material 设计 md-switch 在选项卡中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27454484/

相关文章:

javascript - 如果在 AngularJS 中单击另一个元素,如何添加和删除类?

android - 带有背景图像的按钮和使用 Material 设计风格 - Android

android - 在 Android 中实现 Material Design 时出错

android - 如何删除导航 View 不必要的顶部填充?

flutter - 如何使用 GlobalMaterialLocalizations 中的本地化字符串?

android - 使用 xml 菜单在抽屉导航中分隔

javascript - 以 Angular 更新整个模型对象

html - 简单的 AngularJS 脚本在 Chrome 中工作但在 IE11 中失败

java - HTTP 状态 403 - 在请求参数中发现无效的 CSRF token 'null'

javascript - ng-click 更改父类