Jump to content


Foto

Link Voltar em JavaScript



Existem 5 respostas neste tópico

#1 infomaluco    

infomaluco
  • Participante
  • 1772 mensagens

Publicado 28 June 2006 - 04:22 PM

Tenho várias páginas que apontam para uma página que possui 2 frames: o primeiro é uma página com link Voltar que retorna para a página anterior; o segundo direciona para outro site.
Se eu colocar no link Voltar o código java script:history.back(1) ele retorna normalmente para a página que o chamou. Entretanto, se eu acessar um link na página do segundo frame e clicar no link Voltar (no primeiro frame) retorna para a página anterior do segundo frame (é lógico, pois estou trabalhando com o history). Eu queria que ao clicar no link Voltar retornasse para a página que chamou o frameset.
Já tentei armazenar o history.previous logo no acesso a página mas não funciona e pelo que li na Internet retirado esta propriedade por questões de segurança. E agora? Alguma sugestão?

Valeu!


PUBLICIDADE  
 

#2 _Anakin_    

_Anakin_
  • Participante
  • 64 mensagens

Publicado 28 June 2006 - 10:31 PM

Desculpa cara, eu não entendi direito o que você quer...tem como especificar ?
Se tiver o site no ar me manda o link para eu tentar entender o que você quer ble ?


flw



#3 tyron    

tyron
  • Participante
  • 1 mensagens

Publicado 29 June 2006 - 08:10 PM

Cara, não sei se entendi muito bem o que você precisa... De repente, coloca no link javascript'http://www.babooforum.com.br/idealbb/images/smilies/16.gifocument.history.go(-1) (ou back(1), como você preferir)... Se com o "document" antes não funcionar, testa as variações "parent" ou "window"...

Se não for isso, cola o código aí para nós..

#4 infomaluco    

infomaluco
  • Participante
  • 1772 mensagens

Publicado 01 July 2006 - 01:22 PM

:: Arquivo A0.HTML


<a ref="INDICE.HTM">Indice</a>


:: Arquivo A1.HTML


<a ref="INDICE.HTM">Indice</a>


:: Arquivo A2.HTML


<a ref="INDICE.HTM">Indice</a>


:: Arquivo INDICE .HTM


<frameset cols="30,*">


<frame src="VOLTA.HTM">


<frame src="B.HTM">


</frameset>


:: Arquivo VOLTA.HTM


<a href="java script:history.back(1)">Voltar</a>


:: Arquivo B.HTM


<a href="C.HTM">C_Pag</a>


 


As páginas A0,A1,A2 possuem um link para o frameset INDICE que divide a tela em 2 frames(VOLTA e B). Se eu estiver na página A1 e clicar no link INDICE desta página abrirá o frameset. Neste ponto, ao clicar no link Voltar do frame (da página) VOLTA ele retorna para a página A1. O mesmo processo aconteceria se eu clicasse no link INDICE de A0 ou A2. OK!


Agora, considerando novamente que parti da página A1 e agora estou exibindo os dois frames. Se eu clicar no link C_Pag do frame (página) B sou levado à página C. Mas ao clicar no link Voltar do frame VOLTA, o outro frame (que está em C) que volta para B e eu preciso que volte para A1 (a página que chamou o frameset). O mesmo deveria ocorrer se fosse A2 ou A0.


Ao abrir o frameset eu tentei armazenar o history.previous, mas parece que esta propriedade não é mais aceita.


Em resumo: O que fazer para quando clicar no link Voltar retorne para a página que chamou o frameset?


Acho que agora ficou melhor explicado...

#5 _Anakin_    

_Anakin_
  • Participante
  • 64 mensagens

Publicado 01 July 2006 - 10:20 PM

Ahhhhhhhhhh!! agora entendi!!. É impossível... ¬¬
Impossível do jeito que estava fazendo. Vou dar a mesma solução que dei pro cara da duvida do iframe. Presta atenção.

Ponha nas páginas a0, a1 e a2 como você disse os links assim:
A0.htm http://www.babooforu...smilies/56.gif  <a href="indice.htm?p=a0"></a>
A1.htm http://www.babooforu...smilies/56.gif  <a href="indice.htm?p=a1"></a>
A2.htm http://www.babooforu...smilies/56.gif  <a href="indice.htm?p=a2"></a>


Isso faz com que você crie uma variável "p" com valores de a0, a1, a2 que são as páginas iniciais e manda para a barra de endereços no Browser.

Coloque agora esses dois scripts entre as tags <head></head> da página volta.htm e o link:
<script>
function pegando(item) {
  var query = parent.window.location.search.substring(1);
  var vars = query.split("&");
  for (var i=0;i<vars.length;i++) {
  var pair = vars[i].split("=");
  if (pair[0] == item) {
  return pair[1];
  }
  }

}
</script>


<script>

function volta(){
str=pegando("p")
str=str+".htm"
parent.window.location.href=str
}

</script>

<a href="java script:volta()">Voltar</a>

A primeira função (em vermelho) varre o conteudo da variável na barra de ferramenta. (variável "p" nesse caso).

A segunda função (em verde) pega o conteudo da variável "p" (que é a0, a1 ou a2), e acrescenta a extensão .htm, depois ela redireciona a janela principal dos frames para a variável str que conterá o nome da página que abriu o frameset. O link executa a função ao clicar.

A primeira função eu peguei na Internet como disse no outro tópico, mas dessa vez eu alterei uma parte dela para dar certo. A segunda mais facil eu fiz. Ble? Deu?
Vão começar a achar que só resolvo problemas por Query Strings rsrsrs.
Abraços


#6 francivaldo2003    

francivaldo2003
  • Participante
  • 36 mensagens

Publicado 01 July 2006 - 10:26 PM

OI,eu preciso de uma ajuda,


meu PC está aparecendo uma menssagem,dizendo que eu fui vitima de uma instalação falsicicada ,e etá me pedindo que eu me registre ,será que alguém poderia me informar onde eu posso entrar e retirar a menssagem que aparece,


porventura seria no Regedit ? e como faço? http://www.babooforu.../smilies/15.gif




PUBLICIDADE