如何使用ng-style访问当前元素

Lt.*_*Lt. 11 angularjs

当我使用ng-style时,我想访问当前的元素css属性

由于以下元素:

<div ng-style="changeWidth()">
Run Code Online (Sandbox Code Playgroud)

访问其CSS属性

$scope.changeWidth = function(element) {
    return {
       width: element.width() / 2
    }
};
Run Code Online (Sandbox Code Playgroud)

有人知道实现这一目标的最佳方法吗?

Che*_*niv 6

使用指令:

.directive("getStyle",function(){
  return{
    link:function(scope,element){
      element[0].style.border = "5px dotted #090";
    }        
  }      
});
Run Code Online (Sandbox Code Playgroud)

示例:http://plnkr.co/edit/izOrEi?p = preview

还有一个(指令范围交互):http://plnkr.co/edit/uL7N1j?p = preview

  • 这是最好的解决方法吗?我的意思是如果changeWidth函数依赖于作用域中的另一个标志会发生什么.类似的东西:<div ng-style ="{flag:changeWidth()}"> (2认同)