2

如果我在链接函数中执行 elm.html(),那么我会得到未编译的模板{{curly_brackets}}。如何访问{{template_variables}}已被正确范围变量替换的已编译 html。

如果指令无法做到这一点,那么什么是好的替代解决方案?最终,该指令的目的是获取已编译元素的高度。

这是一个示例小提琴:http: //jsfiddle.net/RfHx8/1/

4

1 回答 1

0

在检查高度之前,您必须让 Angular 完成。为此,您可以使用零延迟的 setTimeout (或者最好是$timeout 服务):

link: function(scope, elm, attrs) {
  $timeout(function(){
    var height = elm.height();
  },0,false);// No delay is necessary
 }

请参阅更新以获取示例:http: //jsfiddle.net/RfHx8/2/

于 2013-06-07T09:24:47.477 回答