Ändere die iframe-Höhe basierend auf dynamischem Inhalt in [duplicate]

8

Ich versuche eine meiner Seiten in einen iframe zu laden. Ich bin mir nie sicher, wie groß die Seite sein wird, die Daten auf der Seite werden dynamisch geladen. Ich möchte, dass der iFrame immer zur Seite passt, egal wie groß oder klein er ist. Folgendes habe ich:

%Vor%

Ich habe versucht, die Höhe der Seite nach dem Laden zu erhalten. Das Problem ist, dass height als 0 zurückkommt. Aber wenn ich das tue:

%Vor%

Die richtige Höhe ist geladen. Ich nehme an, es liegt daran, dass die Daten ein paar Sekunden zum Laden benötigen. Aber das sieht funky aus, wenn die Seite wirklich schnell lädt, oder es wird mir immer noch eine Höhe von 0 geben, wenn es mehr als 2 Sekunden dauert, die Seite zu laden.

Also gibt es einen Weg zu:

  1. Warten Sie und legen Sie die Höhe des iframe fest, sobald die Daten geladen sind, oder
  2. Legen Sie die Höhe des übergeordneten iframes von MyPage.aspx ?
  3. fest
Steven 10.10.2012, 19:27
quelle

2 Antworten

11

Wenn Sie Option 2 verwenden möchten, können Sie über das DOM auf das übergeordnete Fenster zugreifen und die iframe-Höhe des untergeordneten Elements festlegen.

%Vor%     
Matt K 10.10.2012, 19:40
quelle
0

Sie können ein onload -Ereignis mit dem Iframe verknüpfen, bevor Sie es einfügen. Wenn es ausgelöst wird, überprüfen Sie die Höhe des Dokuments im IFrame und passen Sie die Höhe entsprechend an.

    
quelle

Tags und Links