Ir para conteúdo

POWERED BY:

Arquivado

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

fael

ShowHideLayers

Recommended Posts

Pessoal,

 

Fiz um sisteminha em JS para exibição e ocultação de layers, o link é este:

 

http://www.isla.com.br/layers.htm

 

Isso aí tá funcionando beleza, só que eu tenho uma página e dentro dessa página tem um iframe e dentro desse iframe é que estão os links que devem fazer a ação na página main, ou seja, a página que não é o iframe.

 

Será que alguém podia me ajudar a resolver esse esquema?

 

Desde já agradeço http://forum.imasters.com.br/public/style_emoticons/default/joia.gif ,

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal,

 

A função que faz a exibição e ocultação das layers é a seguinte:

 

function MM_showHideLayers() { //v6.0  var i,p,v,obj,args=MM_showHideLayers.arguments;  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }    obj.visibility=v; }}

E ela chama uma outra função que é a seguinte:

 

function MM_findObj(n, d) { //v4.01  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);  if(!x && d.getElementById) x=d.getElementById(n); return x;}

Elas são criadas automaticamente pelo Dreamweaver.

 

Alguém tem alguma função ou consiga modificar essa para que ela faça a operação das layers dentro de um iframe?

 

ah, para chamar a função eu uso:

 

onClick="MM_showHideLayers('Layer2','','show','Layer3','','hide','Layer4','','hide','Layer5','','hide','Layer1','','hide')"

Tentei colocar isso, mas não funcionou:

 

onClick="MM_showHideLayers('window.frame.previsao.Layer2','','hide','window.frame.previsao.Layer3','','hide','window.frame.previsao.Layer4','','hide','window.frame.previsao.Layer5','','hide','window.frame.previsao.Layer1','','show')"

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só para não deixar esse tópico sem respostas, eu memso vou responder, pois depois de muito ter tentado, eu consegui fazer.Na chamada usa-se:<a href="#" onClick="java script:window.parent.layers.MM_showHideLayers('Layer2','','hide','Layer3','','hide','Layer4','','hide','Layer5','','hide','Layer1','','show')">Geral</a>OBS.: layers é o nome do iframe.

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.