2016-01-25 122 views
-1

使用HTML 5 API班級名冊,我想弄清楚,如果我可以使用內角新的HTML 5 API函數,具體內的一角指令。在角指令

我想一個類添加到我的元素,這與jQuery的addClass功能正常工作:

function addClass($rootScope) { 
    return { 
    restrict: 'A', 
    link: function(scope, el, attrs) { 
     el.addClass('new-class'); 
    } 
    } 
} 

但我在想,如果我能使用JS庫,而不是和利用classList函數,如下所示:

el.classList.add('new-class'); 

有沒有人知道這是否可能?

任何幫助表示讚賞。提前致謝!

回答

1

elangular element這將有addClass方法,你可以直接使用,所以現有的代碼仍然沒有jQuery的被引用的工作。

如果要訪問原始的DOM元素,那麼你可以通過索引角元素,例如得到它:

el[0].classList.add('new-class'); 
-1

只要用你的控制器範圍添加類。編寫concats你的類的功能,並將其綁定到ng-class指令。

<a ng-class="concat(currElement)">Link</a> 

JS:

$scope.currElement = ["class","otherclass"]; 
$scope.concat = function(classes) { 
    var c = ""; 
    angular.forEach(classes,function(value){ 
     c = c.concat(value + " "); 
    }); 
    return c; 
} 

現在,你可以把數據或$scope.currElement刪除。

+0

我明白這一點。但我想這樣做的角度指令內。 – realph