[英]Getting HTML element class from AngularJS Directive
我有如下所示的AngularJS代碼塊:
<ion-list can-swipe="true">
<ion-item ng-repeat="item in items" simplify-item>
<div class="row" style="background-color:orange;">
Hello
</div>
</ion-item>
</ion-list>
指令來自離子框架。 不過,我仍在嘗試為此添加自己的指令。 我想通過一個名為“ simplify-item”的屬性來設置CSS屬性。 我的實現此目的的指令如下所示:
myApp.directive('simplifyItem', function() {
return {
restrict:'A',
link: function(element) {
console.log('linking element');
if (element === null) {
console.log('element is null');
} else {
var result = element.hasClass('item-complex');
if (result === null) {
console.log('result is null.');
} else {
console.log('Sweet!');
}
}
}
};
});
當行var result = element.hasClass('item-complex');
被執行,我得到一個例外。 異常說明:
undefined is not a function
我不明白為什么我不能這樣做。 我究竟做錯了什么?
這樣嘗試
myApp.directive('simplifyItem', function() {
return {
restrict:'A',
link: function(scope , iElement, iAttrs) {
var element = iElement;
console.log('linking element');
if (element === null) {
console.log('element is null');
} else {
var result = element.hasClass('item-complex');
if (result === null) {
console.log('result is null.');
} else {
console.log('Sweet!');
}
}
}
};
});
角度文檔的解釋
想要修改DOM的指令通常使用link選項。 link采用具有以下簽名的函數,函數link(scope,element,attrs){...}其中:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.