は、私はこのようなディレクティブとして使用するつもりだnav
html要素のためのtab
CSSクラスを持っている:AngularJS - カスタムディレクティブのCSSクラスを設定する方法は?
<nav tab></nav>
それはこのように解釈されることが予想:
<nav class="tab">
<a></a>
<a></a>
<a></a>
</nav>
...そしてすべてのもの問題を除いてほぼ正常に動作します。CSSクラスをトップの<nav>
要素に設定することはできません。もちろん、ng-class
を明示的に使用して指定することもできますが、それは素晴らしい考えではありません。
約.addClass()
オプションを聞いたことがありますが、それは全く動作しません:
tab.directive('tab', function($compile) {
return {
restrict: 'A',
templateUrl: 'nav-tab.html',
controller: function($http, $scope) {
$http.get('/Tab/List')
.success(function(data) {
$scope.tabs = data;
}).error(function() {
alert("error");
});
},
controllerAs: 'tab',
link: function(element, scope) {
angular.element(element).addClass('tab');
$compile(element)(scope);
}
}
});
それが要素で右指定明示的だせずにトップディレクティブ要素にCSSクラスを追加する方法は?
「.addClass」を実行するとどうなりますか?コンソールのエラー? –
@ PankajParkar、現在のコードを含む空のChromeコンソールがあります。 '.addClass()'を 'element.addClass()'として使用すると、 '.addClassは関数ではない'と言いますが、JQueryが存在しないために発生します。 – WildDev