Вроде нашел решение:
Переопределяем функцию jQuery .html():
(function ($) {
// create a reference to the old `.html()` function
var htmlOriginal = $.fn.html;
// redefine the `.html()` function to accept a callback
$.fn.html = function(html,callback){
// run the old `.html()` function with the first parameter
var ret = htmlOriginal.apply(this, arguments);
// run the callback (if it is defined)
if(typeof callback == "function"){
callback();
}
// make sure chaining is not broken
return ret;
}
})(jQuery);
А теперь немного меняем добавление контента и ставим обработчик:
$('.cards').html(html, function(){
console.log("Данные успешно загружены и отображены");
});
owlCarousel и другие скрипты отрабатывают нормально.
Аналогично можно делать и прелоадеры на загрузку подобного контента.