Redimensionnement dynamique d'une iframe : surmonter les contraintes de hauteur
Lors de l'intégration de contenu externe dans une iframe, il est crucial d'ajuster la hauteur de manière dynamique pour éliminer les barres de défilement inutiles . Pour éviter les problèmes d'accessibilité et maintenir une expérience transparente sur une seule page, nous explorerons des options au-delà d'Ajax ou de PHP.
Solution : communication inter-domaines avec JavaScript
Malheureusement , Ajax et PHP échouent dans ce scénario en raison de restrictions inter-domaines. Au lieu de cela, nous utiliserons JavaScript pour lancer une interaction inter-domaines entre le contenu de l'iframe et la page parent.
Étape 1 : Déclenchez le calcul de la hauteur à partir de la page iframe
Injectez ce code dans le corps de l'iframe :
<body onload='parent.resizeIframe(document.body.scrollHeight)'>
Étape 2 : Redimensionner la fonction dans la page parent
Dans le JavaScript de la page parent, définissez une fonction pour ajuster la hauteur de l'iframe :
function resizeIframe(newHeight) { document.getElementById('blogIframe').style.height = parseInt(newHeight,10) + 10 + 'px'; }
Gestion de la hauteur initiale et du chargement
Limitations et considérations
La solution fonctionne dans le même domaine. Pour l'intégration entre domaines, envisagez d'utiliser un script proxy PHP ou d'intégrer directement le flux RSS du blog.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!