Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

diegotremper

redimencionar iframe

Recommended Posts

É o seguinte colegas:Dentro de uma página HTML tenho um iframe (com o scroll desabilitado) onde abro outras páginas HTML, como as páginas abertas dentro deste iframe possuem diferentes tamanhos, e para que todo o conteudo da pagina aberta no iframe dique visivel, adicionei neste iframe uma função para redimencionar o tamanho do iframe após carregar uma nova página, coisa do tipo:

<iframe id="frame_conteudo" name="frame_conteudo" marginHeight="0" frameBorder="0" width="100%" scrolling="no" onload="adjustFrame(frame_conteudo)" allowTransparency></iframe>

a função adjustFrame() pega o tamanho do corpo da página aberta dentro do iframe e redimenciona a altura do iframe para que fique do mesmo tamanho do corpo da página.ai vai o código da função.

function adjustFrame(frame){	var frmTemp;	  if (document.all) {		var w = frame.document.body.scrollWidth;		var h = frame.document.body.scrollHeight;		if(frame.document.body.scrollWidth > frame.document.body.offsetWidth) {			document.all[frame.name].height = h + 30;		  }		else {			document.all[frame.name].height = h;		  }	  }	  else if (document.getElementById) {		var w = frame.document.width;		var h = frame.document.height;		if(frame.document.body.scrollWidth > frame.document.body.offsetWidth)  {			document.getElementById(frame.name).height = h + 30;		  }		else  {			document.getElementById(frame.name).height = h;					  }	  }	  return false;	}

até ai tudo bem.O problema é que algumas das páginas que são abertas dentro deste iframe possuem códigos DHTML que aumentam tamanhos de tabelas, adicionam campos de formulários dinamicos, entre outras coisas... assim mudando a altura do corpo da página, e como a página não é carregada novamente, o corpo da página fica mais alto do que a altura do iframe, deixando assim uma parte do conteudo sem ser exibido.Após toda esta explicação ai vai a pergunta: Há alguma forma de monitorar o tamanho da página que foi aberta dentro do iframe para que quando seja alterada a altura da página seja chamada a função adjustFrame() ? isso sem que a página seja carregada novamente claro!Ja tentei as seguintes formas:- Colocar na tag <body> da página aberta dentro do iframe um onresize="adjustFrame()" mas não funcionou;- Chamar a função adjustFrame() a cada evento que altere a altura da página aberta dentro do iframe, esta opção funcionou mas não me pareceu muito comoda para o desenvolvimento das páginas.Alguem tem outra idéia?Espero ter sido claro.Grato,Diego Tremper

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não sei, mas pelo que entendi, o jeito é você fazer como você falou mesmo. Chamar a função em cada evento, link ou qualquer outro objeto que você esteja usando para dar o resize ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, estou com o mesmo problema de ajuste da altura do iframe de acordo com o conteúdo recebido dentro do iframe, usei esse código e não funciona. Porq?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.