Ich versuche, RSS-Feed zu erstellen und funktioniert gut mit der Anzeige eines Beitrags, ich möchte es mehrere Beiträge anzuzeigen.Mehrere Beiträge nicht sichtbar mit jQuery für RSS
Anfänglich sind nur Post-Titel (Panel-Titel) sichtbar und bei Klick wurde der Toggle-Effekt (jQuery) hinzugefügt, um seinen Inhalt (Dateninhalt) anzuzeigen. Es ruft mehrere Posts ab (als Objekt, das in der Konsole angezeigt wird), ist aber nicht sichtbar.
Was ich will? -> um zunächst mehrere Titel anzuzeigen und onClick den jeweiligen Inhalt anzuzeigen.
Ich denke, ich sollte jedes verwenden() und append(), aber ich bin mir nicht sicher, wie es geht.
können Sie den gesamten Code überprüfen auf fiddle
hier ist js-Datei:
function blogRSS(url, container) {
var content = $('.data-content'); //console.log(content);
$.ajax({
url: document.location.protocol + '//ajax.googleapis.com/ajax/services/feed/load?v=1.0&num=10&callback=?&q=' + encodeURIComponent(url),
dataType: 'json',
success: function(data) {
console.log(data.responseData.feed); //it shows object of all fetched posts
$.each(data.responseData.feed.entries, function(key, value) {
var thehtml = '<h4><a href="' + value.link + '" target="_blank">' + value.title + '</a></h4>';
$('.panel-heading').html(thehtml);
$('.data-content').html(value.content);
});
$('.data-title').find('h4').addClass('panel-title');
}
});
};
danke, es gut funktioniert, aber gibt es eine Möglichkeit, den HTML oder itemLayout (wie Sie zu halten empfohlen) statische i.d. in HTML-Datei (wie zuvor) und nur die damit verbundenen Änderungen anhängen? Grundsätzlich kein dynamisches Erstellen von Layouts aus jQuery. – NewBee
@ kshah27 Nun, wenn Sie Elemente hinzufügen möchten, so wie Sie es gerade tun, muss es dynamisch hinzugefügt werden. Eine Möglichkeit, wie Sie es möglicherweise viel besser machen können (obwohl es technisch immer noch dynamisch erstellt wird), wäre, ein verstecktes 'div' zu erstellen, das Ihre Struktur enthält, und es dann jedes Mal zu klonen (anstatt die Struktur in einer var zu speichern) – DBS
eine css-Eigenschaft zu main div als versteckt hinzufügen und dann jedes Mal sichtbar machen, was du meinst? Vielleicht kannst du die Geige aktualisieren? – NewBee