有没有办法在浏览器呈现某个元素后触发一个函数?

时间:2014-02-21 09:40:01

标签: angularjs

假设我有以下简单标记:

<div ng-class="getClass(currentElement)" ng-click="doSomething(currentElement)"> {{currentElement.someValue}} </div>

是否有办法在每次因currentElement更改而更改此标记时运行函数? (当currentElement.someValue改变时不是)

1 个答案:

答案 0 :(得分:0)

$scope.watch怎么样?根据{{​​3}}

  

$rootScope.Scope#$watch(watchExpression, [listener], [objectEquality]);

     

注册要在每次执行时执行的侦听器回调   watchExpression发生了变化。

或者您可以尝试使用$scope.on和$ scope.emit`来控制事件。

  

$rootScope.Scope#$on(name, listener);

     

侦听给定类型的事件。有关事件的讨论,请参阅$ emit   生命周期。

     

$rootScope.Scope#$emit(name, args);

     

通过范围层次结构通知向上调度事件名称   注册的$ rootScope.Scope监听器。

最终,the angular documentation

  

在较高级别,指令是DOM元素上的标记(例如   告诉AngularJS的HTML的属性,元素名称或CSS类   编译器($ compile)将指定的行为附加到该DOM元素   甚至转换DOM元素及其子元素。