1

我有一个这个 md 对话框https://codepen.io/patapron/pen/oLaxap

<md-button ng-click="answer('not useful')" >
 Not Useful
</md-button>
<md-button ng-click="answer('useful')" style="margin-right:20px;" >
  Useful
</md-button>

如何从按钮中删除 md-autofocus?

目标:任何按钮都必须预先选择涂成灰色。

4

2 回答 2

3

有一种更简单的方法可以做到这一点,而无需编写自定义指令。Angular Material 能够移除内置的自动对焦。

在您编写 .show 函数的控制器中,将 focusOnOpen 设置为 falsefocusOnOpen: false

文档在这里解释它$mdDialog

在此处输入图像描述

这是我的外观示例

    function deleteMediaDialog() {
        var dialogData = {
        };

        $mdDialog.show({
            controller         : 'deleteMediaDialogController',
            controllerAs       : 'vm',
            templateUrl        : 'app/main/apps/scala-media/dialogs/delete/delete-dialog.html',
            parent             : angular.element($document.body),
            focusOnOpen        : false,
            clickOutsideToClose: true,
            locals             : {
                dialogData: dialogData
            }
        });
    }
于 2017-03-11T14:12:49.973 回答
0

我通过 mysleft 解决了。指令魔法

scope.$watch(function () { return ele.attr('class'); }, function () {
    if (ele.hasClass('md-focused')) {
        ele.removeClass('md-focused');
    }
});
于 2016-08-05T12:26:00.273 回答