Zunächst mal: Ich kann nur davor warnen, auf solch einen externen Service zu bauen. Ich unterstütze da einen Webmaster, der sich ebenfalls mit solchen Newsfeeds befasst und wir hatten schon zwei Mal die Situation, dass solch ein Dienst eingestellt wurde und wir auf einen anderen umstellen mussten.
Der Grund, warum das bei dir nicht funktioniert ist, dass Du mit der Initialisierung des Owlcarousel warten musst, bis beide Feeds geladen sind. So funktioniert es:
var urls = [
'feed1.xml',
'feed2.xml'
];
var feedReady = [];
for (var i = 0; i < urls.length; i++) {
$.ajax({
type: "GET",
url: 'https://api.rss2json.com/v1/api.json?rss_url=' + encodeURIComponent(urls[i]),
dataType: 'json',
error: function () {
$("<div class='errorXml'></div>").html('Fehler beim Laden des XML Files.').prependTo(".results");
},
success: function (data) {
console.log(data);
var gItem = '';
data.items.forEach(item => {
// var itemTitle = item.title.text;
var itemTitle = item.title;
var itemLink = item.link;
var itemImage = item.enclosure.link;
gItem += '<div class="item">';
gItem += '<a href="' + itemLink + '" class="itemLink" target="_blank">';
gItem += '<div class="itemImage" style="background-image:url(' + itemImage + ');"></div>';
gItem += '<div class="itemBalken">';
gItem += '<div class="itemTxt">';
// gItem += '<div class="itemTitle"><p>' + cropTitle(itemTitle) + ' ></p></div>';
// gItem += '<div class="itemTitle"><p>' + itemTitle + ' ></p></div>';
gItem += '<div class="itemTitle"><p>' + itemTitle + '</p></div>';
gItem += '</div>';
gItem += '</div>';
gItem += '</a>';
gItem += '</div>';
});
$('.owl-carousel').append(gItem);
feedReady.push(true);
if (feedReady.length == urls.length) {
var owl = $('.owl-carousel');
owl.owlCarousel(
{
// margin: 0,
nav: true,
// navText: ["<i class='material-icons'>keyboard_arrow_left</i>", "<i class='material-icons'>keyboard_arrow_right</i>"],
// loop: true,
// autoplay: true,
// autoplayTimeout: 3000,
// autoplayHoverPause: true,
// smartSpeed: 500,
// responsive: {
// 0: {
// items: 1
// },
// 600: {
// items: 1
// },
// 1000: {
// items: 1
// }
// }
}
);
// $('.owl-prev').attr("onclick", "javascript:var img=new Image();img.src='';return true;");
// $('.owl-next').attr("onclick", "javascript:var img=new Image();img.src='';return true;");
}
},
});
};
Alles anzeigen