Pop Up com altura variável

hYpe

Portugal@Home Member
Olá,

Para abrir um pop up com dimensoes pre-definidas usa-se isto:
PHP:
onclick="window.open('popup.html','','width=500,height=500');

Mas a questão é que o Pop Up tem conteúdo dinamico, portanto o height pode variar (a width é sempre a mesma, aqui n ha problema).

Ja encontrei um JS pelo google que faz isso, mas para imagens.

Aceitam-se sugestões (q eu sou muito nabo em JS).

Thx
 
No onclick em vez de fazeres window.open(bla bla bla) podes fazer onclick="openWin();"

depois na função (no segmento de javascript, declarado no topo da pagina ou num .js àparte):

function openWin(){
var variavel = 500;
window.open('popup.html','','width=500,height='+variavel);
}

Bem, neste caso forcei a variavel localmente com um valor (o que torna a função inutil :P) mas agora depende de como vás alimentar a variável de height.
Está dependente do quê?

Podes declará-la como variável global e ires afectando, podes passar no onclick, se por exemplo vários botões definirem heights diferentes e aí pões a variável como entrada na função.

Mas para isso é necessário saber do que é que está dependente o height da tua pop up.
 
Pois, não serve..

Isto é tudo em xHTML, e o conteúdo é para ser alimentado por PHP (acho eu, eu sou só o produtor do xHTML).

Portanto eu não sei o valor da variável a passar entendes?

Tenho tipo uma div que depois uma lista dentro..
E a lista pode ser preenchida com mais ou menos conteudo, tendo em conta a selecçao feita no <select> em cima..
 
Bem, eu não trabalho com PHP, mas sim com JSP.

De qualquer das formas se não sabes anteriormente à chamada da nova janela o valor da altura da popup é díficil conseguires isso, pelo menos que eu saiba.

Como tens isso dentro de um Div podias fazer document.divName.offsetHeight para te dar a altura do div e fazer com a janela tivesse essa altura (mais +20px para estetica por exemplo). Mas como o tempo de execução do PHP é posterior, não estou a ver. :S
 
Como tens isso dentro de um Div podias fazer document.divName.offsetHeight para te dar a altura do div e fazer com a janela tivesse essa altura (mais +20px para estetica por exemplo). Mas como o tempo de execução do PHP é posterior, não estou a ver. :S

Eu tentei.. mas mesmo assim não funcionou.

Quer dizer, no IE funciona, no FF não, portanto não interessa.
 
Back
Topo