Se connecter / S'enregistrer
Votre question

Javascript iframe

Tags :
  • Script
  • Programmation
Dernière réponse : dans Programmation
31 Octobre 2007 05:25:48

Bonjour,

Se code permet d'agrandir une iframe automatiquement:

  1. <script type="text/javascript">
  2. <!--
  3. function autofitIframe(id){
  4. if (!window.opera && !document.mimeType && document.all && document.getElementById){
  5. parent.document.getElementById(id).style.height=this.document.body.offsetHeight+"px"
  6. }
  7. else
  8. if(document.getElementById) {
  9. hauteur = this.document.body.scrollHeight + 50;
  10. parent.document.getElementById(id).style.height=hauteur+"px"
  11. }
  12. }
  13. // -->
  14. </script>


Il fonctionne sur ie mais d'après ca source il est censé fonctionner sur ff, mais il fonctionne pas. Quelqu'un saurait me dire pourquoi?

Merci d'avance.

Autres pages sur : javascript iframe

a c 232 L Programmation
31 Octobre 2007 10:42:28

Salut,

Je me demande s'il faut pas que tu initialises une hauteur par défaut à ton iframe.

<iframe style="height:30px" (...)>
31 Octobre 2007 15:58:24

Pardon j'aurai du mettre le script de l'iframe

  1. <body onload="autofitIframe('test')">
  2.  
  3. <iframe src="<a href="http://www.i-services.net/membres/combox/combox.php?uid=122834&sid=67445&id=92452&iframe=oui" rel="nofollow" target="_blank">http://www.i-services.net/membres/combox/combox.php?uid...</a>" width="600" height="600" name="test" marginwidth="0" marginheight="0" frameborder="0" scrolling="no"></iframe>




heigth="600" et style="height:600px" je suppase que c'est pareil?
Contenus similaires
a c 232 L Programmation
1 Novembre 2007 12:32:10

Euh, théoriquement, pas exactement.
Essaie avec le style
1 Novembre 2007 13:27:46

Ca fais pareil :( 
a c 232 L Programmation
1 Novembre 2007 15:10:08

Ok j'ai compris.
Tu n'as pas mis d'ID à ta frame, juste un name

getElementById récupère l'ID avec Firefox (normal me diras-tu...) et pas le name
1 Novembre 2007 15:36:07

Marche pas non plus, enfin t'en pis pas grave...
a c 232 L Programmation
1 Novembre 2007 19:30:40

Chez moi ça marche très bien

  1. <html>
  2. <head>
  3. <script type="text/javascript">
  4. <!--
  5. function autofitIframe(id){
  6. if (!window.opera && !document.mimeType && document.all && document.getElementById){
  7. parent.document.getElementById(id).style.height=this.document.body.offsetHeight+"px"
  8. }
  9. else
  10. if(document.getElementById) {
  11. hauteur = this.document.body.scrollHeight + 50;
  12. parent.document.getElementById(id).style.height=hauteur+"px"
  13. }
  14. }
  15. // -->
  16. </script>
  17. </head>
  18. <body onload="autofitIframe('test')">
  19. <iframe src="http://www.i-services.net/membres/combox/combox.php?
  20.  
  21. uid=122834&sid=67445&id=92452&iframe=oui" width="600" height="200" name="test" marginwidth="0"
  22.  
  23. marginheight="0" frameborder="0" scrolling="no" id="test"></iframe>
  24. </body>
  25. </html>
a c 232 L Programmation
1 Novembre 2007 21:09:33

En fait, ça doit être ta fonction qui est pas bien foutu.
Si tu l'exécutes plusieurs fois, au bout d'un moment c'est bon.

Je vais manger, je vois ça quand je reviens.
1 Novembre 2007 21:14:30

J'ai bon l'éxécuter plusieur fois, on voit une petite partie puis 2 seconde après ca s'agrandis mais pas au max.

Ok bon ap.
a c 232 L Programmation
1 Novembre 2007 23:45:02

Après quelques tests, je dirais que c'est le site que tu interroges qui limite l'accès à ses pages.

Dans un autre script que j'ai vu, il faut utiliser contentWindow.document.body..., ou directement contentDocument.body...

Seulement, on a accès à contentDocument, mais pas à contentDocument.body
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS