2016-09-28 70 views
1

我有這個switch語句,尋找在頁面加載頁面上的某些類,需要重寫到我的控制器之一。在angularjs頁面加載switch語句

有關如何在Angular中重寫這個簡單任務的任何想法?

$('.radior').each(function() { 
 
    var ones = $(this).find('.newone'); // newone's of current .radior 
 
    var count = ones.length; 
 

 
    switch (count) { 
 
     case 1: 
 
     case 2: 
 
     case 3: 
 
     var sub = ['full', 'half', 'third']; 
 
    \t ones.addClass(sub[count - 1] + " col-xs-12 col-md-" + (12/count)); 
 
     break; 
 
     
 
     case 4: 
 
     ones.addClass("quarter col-xs-12"); 
 
     break; 
 

 
     case 4: 
 
     ones.addClass("another col-xs-12"); 
 
     break; 
 
    } 
 
});

任何幫助深表感謝。由於

回答

0

您需要改造,在一個指令:

angular.directive('radior', function() { 
    return { 
     restrict: 'E', 
     transclude: true, 
     link: function(scope, element, attr) { 
      var ones = element.find('.newone'); // newone's of current .radior 
      var count = ones.length; 

      switch (count) { 
       case 1: 
       case 2: 
       case 3: 
        var sub = ['full', 'half', 'third']; 
        ones.addClass(sub[count - 1] + " col-xs-12 col-md-" + (12/count)); 
        break; 

       case 4: 
        ones.addClass("quarter col-xs-12"); 
        break; 

       case 4: 
        ones.addClass("another col-xs-12"); 
        break; 
      } 
     } 
    }; 
}); 

現在在你的HTML,你將有這樣的事情:

<radior> 
    <div class="newone">test</div> 
</radior> 

我沒有測試它,但它應該工作或它需要針對您的特定需求的小修補程序。

+0

看起來不可思議,我現在會測試這隻小狗。非常感謝 – wwwredback