Maison >interface Web >tutoriel CSS >Comment rendre les iFrames défilables dans Mobile Safari ?
Affichage des iFrames dans Mobile Safari : un guide complet
L'intégration des iFrames dans les applications Web mobiles peut être un défi, en particulier lorsque l'on vise à restreindre leur taille. Malgré la définition des attributs de hauteur et de largeur, l'iframe peut rester sans contrainte.
Solution :
Entourez l'iframe dans un div pour contrôler ses dimensions. Cependant, cette approche introduit des limitations de défilement au sein de l'iframe.
Pour surmonter ce problème, mettez en œuvre la stratégie suivante :
Exemple de code :
JavaScript pour l'iframe :
setTimeout(function () { var startY = 0; var startX = 0; var b = document.body; b.addEventListener('touchstart', function (event) { parent.window.scrollTo(0, 1); startY = event.targetTouches[0].pageY; startX = event.targetTouches[0].pageX; }); b.addEventListener('touchmove', function (event) { event.preventDefault(); var posy = event.targetTouches[0].pageY; var h = parent.document.getElementById("scroller"); var sty = h.scrollTop; var posx = event.targetTouches[0].pageX; var stx = h.scrollLeft; h.scrollTop = sty - (posy - startY); h.scrollLeft = stx - (posx - startX); startY = posy; startX = posx; }); }, 1000);
HTML pour le parent div :
<div>
Remarque : Lorsque le contenu de l'iframe n'est pas sous votre contrôle, vous pouvez créer une superposition sur l'iframe et implémenter une fonctionnalité de défilement similaire. Cependant, l'interaction avec le contenu de l'iframe (par exemple, en cliquant sur des liens) sera restreinte.
Considérations supplémentaires :
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!