我想引用指令中的第二个元素。
基本上我想根据虚拟div的高度来调整文本框的大小。
<textarea vertical-align="dummyDiv"></textarea>
<div class="dummyDiv"></div>
在指令中,如何访问dummyDiv元素的属性?
答案 0 :(得分:0)
以下是访问指令之外的其他元素的一种方法的快速示例。
http://plnkr.co/edit/S8EGeE4Z87jv6UQim6eG?p=preview
<textarea vertical-align secondary-elem="'dummyDiv'" ng-model="someScopeValue"></textarea>
<div class="dummyDiv"></div>
<script>
angular.module('myApp', [])
.controller('myController', function($scope) {
$scope.someScopeValue = 'Sample Text';
})
.directive('verticalAlign', function($parse) {
return {
scope: {
secondaryElem: '='
},
require: '^ngModel',
link: function(scope, elm, attrs, ngModelCtrl) {
var otherElem = angular.element('.' + scope.secondaryElem);
function process(inputValue) {
otherElem.text(inputValue);
}
ngModelCtrl.$parsers.push(process);
console.log(otherElem);
}
};
});
</script>