2015-04-14 135 views

回答

1

如果你看一下该指令有检测功能,

self.close = function() { return self.$toggleOpen(false); }; 

这里是SideNav指令

3

在你controller使用$watch检查的isOpen()返回值:

$scope.$watch(
    function() { 
     return $mdSidenav('left').isOpen(); 
    }, 
    function (newValue, oldValue) { 
     console.log(newValue); 
     if (newValue == false) { 
     var button = angular.element(document.querySelector('#navButton')) 
     button.removeAttr('md-focused') 
     } 
    }); 
+0

我其实已经试过这个。使用angular-material-0.10.0该按钮没有属性,而是一个名为“md-focused”的类。我可以在Firefox Inspector中看到它。但是在手表处理程序执行时,它没有'md-focused'类。似乎有某种时间问题? – dasnervtdoch

+0

伟大的小技巧,谢谢 – Shay