2016-03-29 7 views
0

Ich habe Inhalte auf einer Seite, die Anzeigen enthält. Ich muss in der Lage sein, den Inhalt dieser Seite mit jQuery abzurufen und die Anzeigen aus dem Inhalt zu entfernen. Ich habe das zur Arbeit gebracht, aber es verändert auch die Elemente auf der Seite. Ich muss eine Variable erhalten, die eine saubere Version des HTML innerhalb des div enthält, aber alle Anzeigen entfernen.Ändern Sie den Div-Inhalt mit jQuery und speichern Sie das Ergebnis als Variable

Ich hatte gehofft, dass so etwas funktionieren würde, aber es tut nicht. Gibt es etwas, was ich tun kann, um es zu speichern, die HTML von "postbody" mit den Änderungen von der "find/remove" -Methode angewendet, ohne den Live-Inhalt auf der Seite zu ändern.

var content = jQuery('#postbody').find('.adsbygoogle').remove().html(); 

Wenn ich den obigen Befehl ausführen, tut es, was ich will es tun, aber es entfernt den Inhalt aus dem aktuellen Beitrag auf der Seite.

Es scheint auch etwas Code in der AdSense-Bibliothek zu sein, der mich daran hindert, den Seiteninhalt zu bekommen und ihn in einem Platzhalter zu speichern. Ändern Sie die Seite, holen Sie den Inhalt ohne Werbung und ersetzen Sie ihn dann durch den Inhalt der Platzhaltervariablen.

+1

Klon es zuerst? https://api.jquery.com/clone/ –

+0

Ich legte .clone vor der .find und es nicht den Code auf der Seite ändern, aber das Ergebnis war die AdSense-Anzeige und keinen Inhalt. Ich will das Gegenteil davon. –

+0

Was ist, wenn Sie anstelle von remove hide() verwenden oder ein display: none style Attribut hinzufügen? –

Antwort

1

Sie können so etwas wie dies versuchen:

$postbody = $("#postbody").clone(); 
$postbody.find('.adsbygoogle').remove(); 
return $postbody.html(); 
Verwandte Themen