← HTML + CSS

Ajuda com IFRAME - ASAP

Lida 3328 vezes

Offline

Cacofb 
Elite
Mensagens 1036 Gostos 3
Troféus totais: 34
Trófeus: (Ver todos)
Level 6 Tenth year Anniversary Linux User Mobile User Apple User Super Combination Combination Topic Starter 10 Poll Votes Poll Voter

Pessoal!

Alguém me consegue ajudar aqui com um problema.

Tenho duas DIV's lado a lado.
Uma delas é onde vai estar o menu, a outra será o conteúdo do site.
Na DIV de conteúdo, quero abrir um iframe, pois vou ter um player a tocar mp3 na DIV do menu.
Todos os links do menu irão abrir no iframe.

O problema é que não consigo definir uma altura no iframe.. ele não me aceita o valor que introduzo. Na largura aceita, na altura não.
No Chrome aceita, nos outros não. Fica muito pequeno! Devo ter algo a limitar talvez..

Alguém me pode dar uma checkada no código? Posso ter alguns positions mal feitos, etc

http://mib2010.com/index2.php

Obrigado!!
Offline

Cacofb 
Elite
Mensagens 1036 Gostos 3
Troféus totais: 34
Trófeus: (Ver todos)
Level 6 Tenth year Anniversary Linux User Mobile User Apple User Super Combination Combination Topic Starter 10 Poll Votes Poll Voter

Ninguém me consegue ajudar com isto??
Já tou a desesperar..

Pelo que li nas pesquisas que fiz, ele assume só 200px no height no firefox e IE. Não permite 100%.
A única solução passa por usar um javascript.. já tentei alguns e não consegui resolver! :/

O problema é que preciso mesmo do iframe, porque tenho de ter o raio do mp3player a tocar!

Alguém que já tenha tido esta experiência?

Obrigado
Offline

Cacofb 
Elite
Mensagens 1036 Gostos 3
Troféus totais: 34
Trófeus: (Ver todos)
Level 6 Tenth year Anniversary Linux User Mobile User Apple User Super Combination Combination Topic Starter 10 Poll Votes Poll Voter

Consegui resolver mais ou menos com este código:

Código: [Seleccione]
<script language="JavaScript">
<!--
function calcHeight()
{
//find the height of the internal page
var the_height=
document.getElementById('frame').contentWindow.
document.body.scrollHeight;

//change the height of the iframe
document.getElementById('frame').height=
the_height;
}
//-->
</script>

e no iframe:

            
Código: [Seleccione]
<iframe name="frame" src="index3.php" id="frame" onLoad="calcHeight();" width="98%" height="1" scrolling="yes" frameborder="0" allowtransparency="yes">Necessita de um browser que suporte iframes!
            </iframe>


No entanto ainda não me aparece direito, pois não me limita aquilo a X pixels ou percentagem na altura.
Alguém que perceba de javascript me pode dar uma mãozinha nisto?

Obrigado!!
Offline

bonsempregos 
Membro
Mensagens 2008 Gostos 7
Feedback +3

Troféus totais: 29
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Poll Starter Level 5 Level 4 Level 3 Level 2

Porque continuas a usar iframes do seculo passado e nao usas ajax?

Parece um bixo de 7 cabeças mas não é, consegues o que queres, fazer refresh de algum conteudo de determinada parte da pagina e nao andas ai com iframes...

procura por ajax content loader por exemplo, crias uma pagina com o tal player e depois carregas o resto atraves do content loader.. poupa-te trabalho e dores de cabeça

tb podes usar jquery que ja tem library para isso a muito :)
Offline

cpdesign 
Membro
Mensagens 235 Gostos 1
Troféus totais: 21
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Level 4 Level 3 Level 2 Level 1 100 Posts 50 Posts

Atenção aos standards!

Pelo que vi na página estás a usar o Doctype XHTML 1.0, que não aceita a especificação do atributo Height em percentagem, tem que ser uma medida fixa em pixels.

Caso queiras usar o valor do atributo em percentagem, terás que mudar o Doctype para HTML 4.01, pelo menos na página inicial. O outro recurso é usares o JavaScript como referiste para calcular a área disponível. O Ajax também é uma hipótese.

Quanto ao SEO as frames e iframes não ajudam nada.
Offline

Cacofb 
Elite
Mensagens 1036 Gostos 3
Troféus totais: 34
Trófeus: (Ver todos)
Level 6 Tenth year Anniversary Linux User Mobile User Apple User Super Combination Combination Topic Starter 10 Poll Votes Poll Voter

Já resolvi a questão pessoal! Obrigado!! eheh