2016-07-25 18 views
1

Ich habe einen iframe in eine HTML-Seite hinzugefügt, die ich auf Firefox-Entwickler testen.Firefox-Registerkarte mit einem iframe laden

Das Vorhandensein des iframe bewirkt, dass die übergeordnete Seite weiterhin geladen wird: Der Ladekreis in der Registerkarte wird nicht angehalten. Nach ein paar Minuten scheint es die Aufführungen zu verschlechtern. Kein Problem bei Google Chrome.

Der Iframe zeigt nicht auf eine Datei. Dies ist zunächst ein leerer Iframe, den ich mit HTML aus einer AJAX-Anfrage vervollständige (Ich versuche, den Körper einer E-Mail in einem Iframe zu zeigen). Ich glaube nicht, dass dies einen Einfluss hat, aber ich benutze AngularJS auf der Seite.

Ich habe versucht, jede Interaktion mit Javascript auf dem iframe zu kommentieren, aber das Problem ist immer noch hier. Ich habe auch versucht, auf eine echte Datei (eine leere Datei) zu zeigen.

<iframe frameborder="0" scrolling="no" sandbox="allow-same-origin" class="p-y" width="100%" ng-init="resizeFrame()"></iframe> 

(ein Sandbox-Attribut, falls Ursprung Ausgabe hinzugefügt, aber ändert nichts)

Was ist das Problem? Und wie kann ich es lösen?

+0

ist es obligatorisch, einen iframe zu verwenden? Manchmal (oft) iframe ist eine schlechte Idee ... – Luca

+1

Ich weiß nicht, wie ich es auf eine andere Weise tun könnte ... Problem ist ... der E-Mail-Körper, den ich erhalte, ist volles HTML-Dokument (inculdes , ...). Also muss ich diesen Teil des Codes in einem iframe isolieren. – Ecorce

Antwort

0

Um dynamische Daten in Ihrer Seite anzuzeigen, könnten Sie ein einfaches [div] -Tag verwenden.

Sie definieren einen leeren Tag

<div id="result"></div> 

und wenn Ihre Rückkehr AJAX-Aufrufs mit Erfolg, können Sie Ihren HTML-Code in die div

function getData(){ 
    document.getElementById('result').innerHTML = "<b>Sender :</b> [email protected]<br/><b>Subject :</b> Hello world"; 
} 

Here you can find a jsfiddle running sample (Ich habe keinen AJAX-Aufruf injizieren können, sondern simulieren es mit einer Javascript-Funktion)

UPDATE (nach Kommentaraktualisierung)

Einstellung innerHTML, Header werden verworfen, ich habe updated jsfiddle demo und Sie können versuchen, in div sind nur Inhalte hinzugefügt