Dynamische Iframe-Größenänderung: Überwindung von Höhenbeschränkungen
Beim Einbetten externer Inhalte in einen Iframe ist es wichtig, die Höhe dynamisch anzupassen, um unnötige Bildlaufleisten zu vermeiden . Um Barrierefreiheitsprobleme zu vermeiden und ein nahtloses Single-Page-Erlebnis zu gewährleisten, erkunden wir Optionen über Ajax oder PHP hinaus.
Lösung: Cross-Domain-Kommunikation mit JavaScript
Leider , Ajax und PHP reichen in diesem Szenario aufgrund domänenübergreifender Einschränkungen nicht aus. Stattdessen verwenden wir JavaScript, um eine domänenübergreifende Interaktion zwischen dem Inhalt des Iframes und der übergeordneten Seite zu initiieren.
Schritt 1: Höhenberechnung von der Iframe-Seite auslösen
Fügen Sie diesen Code in den Körper des Iframes ein:
<body onload='parent.resizeIframe(document.body.scrollHeight)'>
Schritt 2: Größenänderungsfunktion auf der übergeordneten Seite
Definieren Sie im JavaScript der übergeordneten Seite eine Funktion zum Anpassen der Iframe-Höhe:
function resizeIframe(newHeight) { document.getElementById('blogIframe').style.height = parseInt(newHeight,10) + 10 + 'px'; }
Verwaltung der Anfangshöhe und des Ladens
Einschränkungen und Überlegungen
Die Lösung arbeitet innerhalb derselben Domäne. Erwägen Sie für die domänenübergreifende Einbettung die Verwendung eines PHP-Proxy-Skripts oder die direkte Einbettung des RSS-Feeds des Blogs.
Das obige ist der detaillierte Inhalt vonWie kann ich die Größe von Iframes ohne Ajax oder PHP dynamisch ändern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!