【发布时间】:2015-01-05 13:44:03
【问题描述】:
如何获取共享指令的所有元素的数组,以便我可以迭代它们并让它们彼此做不同的事情?
我有一个用于多个元素的指令,根据每个使用restrict: 'A' 的指令的属性值,我需要这些指令在链接函数中相互对话并以不同的方式相互影响.
我尝试过使用:
link : function(scope, elem, attr) {
attr.forEach(function(e, i) {
if(attr[i] === 'menu') {
//do something
} else if (attr[i] === 'scroll') {
//do something else
}
});
}
但我将 forEach 作为未定义的函数。我也尝试了一个简单的 for 循环,但两者都有:
elem.length
和
attr.length
给我未定义的。
请注意,我不想使用具有不同逻辑的不同指令,因为我需要每个元素实际执行特定于其他元素的操作。
我可以只使用 jQuery 直接选择元素,但由于几个原因,这不太理想。
【问题讨论】:
标签: javascript arrays angularjs dom angularjs-directive