我在使https://github.com/gthmb/jquery-free-transform和AngularJS正常工作时遇到麻烦。缩放和旋转的控件没有获得附加元素的宽度/高度。我正在使用指令将jQuery.freetrans()附加到动态生成的元素上。
<div ng-class="layout.element" freetrans></div>
app.directive('freetrans', function () {
return {
restrict: 'A',
link: function postLink(scope, elem, attrs) {
elem.freetrans();
}
};
});
类别名称是“图片”。如果我使用它很好用
<div class="image" freetrans></div>
代替
<div class="{{ layout.element }}" freetrans></div>
要么
<div ng-class="layout.element" freetrans></div>
希望任何人都可以帮助我。
谢谢&格蕾兹
最佳答案
从我看来,似乎您是在附加类或在DOM中呈现元素之前调用elem.freetrans()的。
您可以尝试以下两种方法:
使用$ timeout(function(){elem.freetrans()})-有时,您需要在指令中使用$ timeout在元素已在DOM中呈现后对元素进行某些操作(例如,使它与/ height一起使用);
尝试调用elem.freetrans()时,使用attrs。$ observe确保已设置该类。