Comment voulez-vous mettre une certaine section d'un site web dans une iframe?
Je suis à la recherche de mettre seulement une petite partie d'un site web dans une iframe. Comment puis-je faire? Habituellement, lorsque j'ai mis en place un iframe pour un site web (disons yahoo), il reçoit l'ensemble du site... disons que j'ai voulu seulement une petite partie du site web, comment puis-je faire?
Est-il possible de mettre des marges sur un iframe d'un site web?
Je cherche à mettre une iframe d'un site web sur mon site web. (si cela fait sens)
Merci d'avance 😀
Vous devez vous connecter pour publier un commentaire.
Dans la plupart des cas, la référence est à l'extérieur et vous n'avez pas de contrôle sur la page externe. Ainsi, vous avez à faire défiler le contenu de l'IFRAME à la position désirée. Bien sûr, cela est impossible. Oui, il y a un peu de JavaScript hacks, mais ils sont tous une mauvaise solution, car le défilement ne se produit qu'après le chargement de la page.
La Solution
Vous pouvez envelopper l'IFRAME dans un div et de faire défiler la DIV de contenu à l'aide absolu en HAUT et à GAUCHE des propriétés CSS.
Voici un exemple:
Ici vous avez un DIV avec des dimensions 400x200px. Maintenant, en déplaçant l'IFRAME, vous pouvez le positionner sur le bon endroit.
Cela ne peut pas être fiable à cause du même la politique de l'origine et liées iframe restrictions.
Si c'était votre site web dans votre site web [ou un proxy vers le site cible] JavaScript dans le parent pourrait modifier le DOM ou CSS de l'embedded iframe comme désiré ..
Si le site web cible est prête à communiquer des données par un autre moyen (y compris XDR/XHR+De la SCRO), puis à ceux qui pourraient potentiellement être utilisées comme pirater-un-bouts en tant que bien. Cependant, il n'y a pas de solution générale pour cette tâche.
Même
jQuery.charger
(qui utilise XHR) est limité par la même origine: lesUn
<iframe>
vous donne une fenêtre complète pour travailler avec. Le moyen le plus direct pour faire ce que vous voulez, c'est votre serveur vous donner une page complète qui contient seulement le fragment que vous voulez montrer.Comme alternative, vous pouvez simplement utiliser un simple
<div>
et utiliser le jQueryload
fonction pour charger la page entière et arracher juste la partie que vous voulez:Il y a peut être d'autres choses que vous devez faire, et une différence significative est que le contenu va devenir une partie de la page principale, au lieu d'être placés dans une fenêtre séparée.
Vous ne serez pas en mesure de manipuler l'URL pour obtenir une partie seulement de la page. Donc, ce que vous voulez faire est de saisir le contenu de la page par le serveur-côté de la langue de votre choix, puis parser le HTML. À partir de là, vous pouvez prendre le spécifique de la DIV que vous recherchez, puis l'imprimer à votre écran. Vous pouvez également les utiliser pour supprimer du contenu indésirable.
Avec PHP, vous pouvez utiliser
file_get_contents()
pour lire le fichier que vous souhaitez analyser, puis utiliserDOMDocument
d'analyser et de saisir la DIV que vous voulez.Voici l'idée de base. C'est non testé mais devrait vous diriger dans la bonne direction: