我正在制作一个指令,根据控制器的变化调整div的大小。当模型发生变化时,我需要计算浏览器窗口中剩余的可用空间量。如何将元素从链接函数传递到$ watch函数?
简而言之,我如何根据模型的变化来操纵DOM?
var module = angular.module('cmsApp')
module.directive("changeWidth", function($timeout) {
return {
restrict: 'A',
link: function($scope, element, attrs) {
width = element.width();
$scope.$watch('currentFolder', function(value){
// manipulate dom here
});
}
}
});
<!-- need to calculate the size of this -->
<div change-width class="col-md-9 right-pannel"></div>
答案 0 :(得分:0)
我认为Angular甚至不会根据您的模板代码执行您的指令。它应该是
<div change-width class="col-md-9 right-pannel"></div>
如果您不熟悉Angular,我知道这是一个错误来源。来自文档:
Angular使用name-with-dashes作为自定义属性和camelCase 对于实现它们的相应指令)