Jquery-free-transform + AngularJS

У меня возникли проблемы с тем, что https://github.com/gthmb/jquery-free-transform и AngularJS работают хорошо. Элементы управления масштабированием и вращением не получают ширину/высоту прикрепленного элемента. Я использую директиву для присоединения jQuery.freetrans() к моему динамически сгенерированному элементу.

app.directive('freetrans', function () {
 return {
 restrict: 'A',
 link: function postLink(scope, elem, attrs) {
 elem.freetrans();
 }
 };
});

имя класса, например, "изображение". Он работает хорошо, если я использую

вместо

или

надеюсь, любой может мне помочь.

Спасибо и Greetz

1 ответ

Из того, что я вижу, кажется, что вы вызываете elem.freetrans() до того, как класс подключен или элемент отображается в DOM.

Есть две вещи, которые вы можете попробовать:

  1. Используйте $ timeout (function() {elem.freetrans()}) - вам иногда понадобится $ timeout в директиве, чтобы что-то делать с элементом после того, как он был отображен в DOM (например, получить его с /height);

  2. Используйте attrs. $ Наблюдать, чтобы убедиться, что класс установлен, когда вы пытаетесь вызвать elem.freetrans().

licensed under cc by-sa 3.0 with attribution.