Ir para conteúdo

POWERED BY:

Arquivado

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

GGuga

Frames + Javascript

Recommended Posts

Galera to com um problemão e preciso resolver isso o mais rápido.. é o seguinteeu to precisando fazer com que um frame de uma página ora apareça ora nao, ou seja, quando a pessoa clicar num botao o frame apareça sem dar um reload. O Código para issoeu consegui na internet:

<html><head><script>function switchFrameSet(){ if (top.framesOn == true) //turn it off {  document.body.rows = "*, 0";  top.framesOn = false; } else //turn it on {  document.body.rows = "50%, *";  top.framesOn = true; }}</script></head><frameset rows="50%,50%" framespacing="0" frameborder="NO" border="0">  <frame src="listagem.asp" name="top" id="top">  <frame src="b-carrinho.asp" name="down" scrolling="NO" noresize id="down"></frameset><noframes><body></body></noframes></html>

e na página "listagem.asp" eu chamo esta função da seguinte maneira:

<a href="#" onClick="top.top.switchFrameSet()">Teste</a>

sendo que o site é dividido em três frames: um emcima (topFrame), um na esquerda (leftFrame) e um no centro (mainFrame) e esta tal página vai carregar no mainFrame. ou seja quando ela é carregada isoladamente ela funciona perfeitamente, porém quando carregada no mainFrame dá erro de script, com certeza deve ter como fazer funcionar, sendo carregada no mainFrame eu só nao sei como a função deveria ser alterada para funcionar. O erro deve está no modo que acesso as propriedades do frame. Eu nao sei como funciona a hierarqui dos frames. Peço a todos que me ajudem por que to precisando muito disso para um cliente.

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara, eu tb nao sabia como fazer e consegui desenvolver um.

 

isso aqui você coloca onde você quer que apareça os botões (esconder/mostrar):

 

<script language=javascript>function configurar_frames(conjunto,tipo,valores) {	e = parent[conjunto];	e[tipo] = valores;}</script><input type=button onclick="configurar_frames('frames1','cols','100%, 0');" value="esconder"> <input type=button onclick="configurar_frames('frames1','cols','30%, *');" value="mostrar">
funciona assim:

 

configurar_frames('frames1','cols','100%, 0')

 

'frames1' é o nome do conjunto de frames a ser manipulado

'cols' é a propriedade a ser alterada. no seu caso seria 'rows'

'100%, 0' são as dimensões dos frames

 

 

na página onde vai o frameset especifique um nome para ele, por exemplo:

 

"frames1"

 

 

<frameset name="frames1" rows="50%,50%" framespacing="0" frameborder="NO" border="0">

<frame src="listagem.asp" name="top" id="top">

<frame src="b-carrinho.asp" name="down" scrolling="NO" noresize id="down">

</frameset>

<noframes><body>

</body></noframes>

</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigadão pela resposta, realemnte muito interessante como fizestes. Pouco antes de você postar esta mensagem eu consegui desenvolver de uma forma parecida com a sua. vou aqui coloca-la:

<script>var cont = 0;function switchFrameSet(){ if (cont == 0) {  parent.document.all.frame.rows = "80%, *";  cont++ }}</script>

na verdade desta forma o frame aparece desabilitado e após clicar no botao ele é habilitado (visível) .'frame' eh o id do frameset que estou alterando as propriedades. vlw

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.