Problème scroll iframe

Fermé
Nayro57 Messages postés 198 Date d'inscription dimanche 3 mai 2009 Statut Membre Dernière intervention 1 novembre 2015 - 13 juin 2012 à 17:53
Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 - 20 juin 2012 à 13:44
Bonjour,

Ayant commencé le développement d'un site pour un ami et selon sa volonté j'ai fais un menu avec divers liens et un grand div qui prend 80% de la page en largeur.

Mon problème est le suivant : à l'intérieur du grand div j'ai inséré une iframe qui se rempli selon le lien sur lequel on clique du menu. Par exemple en cliquant sur forum, le div va se remplir avec le forum.
Jusque là ça fonctionne mais le problème est que dans l'iframe au lieu de toute simplement agrandir la page principale lorsque le contenu dépasse, il me met une scrollbar dans l'iframe.

En somme, je voudrais savoir si il est possible de tout simplement agrandir la page principale (et donc le div) plutôt que de mettre une scrollbar dans l'iframe.

J'ai fais quelques recherches comme par exemple l'attribut scrolling à "no" dans l'iframe mais le problème c'est qu'il n'agrandit pas la page principal il se contente simplement de ne pas afficher le reste de l'iframe. J'ai tenté de jouer avec l'attribut overflow mais encore une fois sans succès...

Pourriez-vous m'aider s'il vous plait ?

P.S. : j'ai entendu à droite à gauche que c'était déconseillé d'utiliser les iframes, mais c'était la solution la plus simple à mettre en oeuvre rapidement, si quelqu'un a une autre solution pas trop difficile à mettre en oeuvre je suis preneur.

Merci bien :)


3 réponses

Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 208
Modifié par Fallentree le 13/06/2012 à 18:21
en changeant le style de la div
document.getlementbyid('madiv').style.width='100%';

il me semble qu il faut faire ... par exemple avec la hauteur ...

function full_height() {    
         var hauteur; 
         if( typeof( window.innerWidth ) == 'number' )      hauteur = window.innerHeight;    
         else if( document.documentElement && document.documentElement.clientHeight )      hauteur = document.documentElement.clientHeight;    
             hauteur -= 50;    
             left_sidebar.style.height = hauteur+"px";    
             map.style.height = hauteur+"px";  }
0
Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 208
14 juin 2012 à 01:24
window.onresize = function() {
full_height(); };
0
Nayro57 Messages postés 198 Date d'inscription dimanche 3 mai 2009 Statut Membre Dernière intervention 1 novembre 2015 2
15 juin 2012 à 17:59
Ah désolé j'avais pas vu qu'il y avait eu une réponse :s

J'ai essayé ce que tu as marqué mais ça ne change rien :s :

<script type="text/javascript">
function full_height() {
var hauteur;
if( typeof( window.innerWidth ) == 'number' ) hauteur = window.innerHeight;
else if( document.documentElement && document.documentElement.clientHeight ) hauteur = document.documentElement.clientHeight;
hauteur -= 50;
left_sidebar.style.height = hauteur+"px";
map.style.height = hauteur+"px";
}

</script>

<script type="text/javascript">
window.onresize = function(){ full_height();}
</script>
0
Nayro57 Messages postés 198 Date d'inscription dimanche 3 mai 2009 Statut Membre Dernière intervention 1 novembre 2015 2
Modifié par Nayro57 le 13/06/2012 à 19:15
Salut Fallentree,

Merci pour ton aide, j'ai fais un copier/coller de la fonction full_height dans ma page. Cependant, je ne sais pas trop où l'appeler dans mon code, au moment où l'on définit la hauteur du div ?
Par exemple :
<div height=<script type="text/javascript">full_height()</script>%>
l'iframe
</div>


La ligne que tu m'as donné au début :
document.getlementbyid('madiv').style.width='100%';

je ne comprend pas trop l'intérêt de la ligne, la div va toujours faire 80% en largeur, c'est en hauteur que ça pause problème, limite le scroll horizontal ne gène pas trop c'est surtout le scroll qui est gênant mais la hauteur du div est toujours en 100%
0
Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 208
20 juin 2012 à 10:35
0
Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 208
20 juin 2012 à 10:42
var hauteur = document.body.offsetHeight;
Permet de savoir la taille de la page sans scroll ...
Mais ...
0
Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 208
20 juin 2012 à 13:42
0
Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 208
20 juin 2012 à 13:44
<iframe id="iframe" onload="Heigther();" ></iframe>

function Heigther() {
var ifr=document.getElementById('iframe');
var ifr2=iframe.document.body;
ifr.style.height=ifr2.clientHeight+100;
}
0