У меня возникают некоторые проблемы, связанные с манипуляцией DOM после обработки данных.
У нас есть плагин слайдера jQuery, привязанный к данным и работающий нормально, но при использовании ng-repeat
мы должны завернуть его инициализацию $timeout
, чтобы он работал — и теперь это даже не работает.
Я думаю, что использование $timeout
ненадежно, что приводит к плохому исправлению. В jQuery я мог бы использовать $(document).ready()
— который был твердым, но использование angular.element(document).ready()
тоже не работает.
Вызывается указатель слайдера, но не может получить высоту изображений в слайдере, потому что изображения не были загружены в DOM — в результате чего ползунок имеет рассчитанную высоту 0.
В настоящее время я нахожу это очень расстраивающим - должен быть способ манипулировать DOM после того, как данные (например, в ng-repeat
) прошли циклический переход.
Инициализация ползунка выполняется следующим образом:
var sliderLoad = function () {
$timeout(function () {
var setHeight = elem.find('.slide:eq(0)').outerHeight(true);
elem.css({
height: setHeight
});
}, 1000);
// Show the slider nav buttons
elem.parent().find('.direction-nav').show();
};
& hellip; и вот демонстрация .