2013-06-22 127 views
2

我試着去添加/ 3個按鍵, 由於某種原因,有時需要刪除CALSS點擊多次工作NG-點擊不能正常工作

<a class="button small"> 
    <i class="icon-circle-arrow-up" ng-click="select('slide')" ng-class="{active: 'slide' ==  selected}"></i> 
</a> 
<a class="button small"> 
    <i class="icon-resize-horizontal" ng-click="select('wave')" ng-class="{active: 'wave' == selected}"></i> 
</a> 
<a class="button small"> 
    <i class="icon-repeat" ng-click="select('role')" ng-class="{active: 'role' == selected}"></i> 
</a> 

的JavaScript:

myApp.controller("TodoCtrl", function($scope, $http) { 
    $scope.slide = "one"; 
    $scope.animate = "slide"; 
    $scope.selected = "slide"; 
    return $scope.select = function(item) { 
    $scope.selected = item; 
    return $scope.animate = item; 
}; 
}); 

plunkr:

http://plnkr.co/QuXPziBWUgmiHcmcqC4F

回答

5

變化

 <a class="button small"> 
     <i class="icon-circle-arrow-up" ng-click="select('slide')" ng-class="{active: 'slide' == selected}"></i> 
     </a> 

 <a class="button small" ng-click="select('slide')"> 
     <i class="icon-circle-arrow-up" ng-class="{active: 'slide' == selected}"></i> 
     </a> 

你有實際的圖標,並在整個按鈕NG單擊不

+0

現在就工作,謝謝 –

+0

確實有效。然而,我不明白爲什麼把它放在圖標上導致這種不可預知的行爲。 – agabor

0

嘗試使用on-tap事件包裝用span圖標:

<span on-tap="select('slide')"> 
     <i class="icon-circle-arrow-up" ng-class="{active: 'slide' == selected}"></i> 
    </span>