Como fazer um botão que volta para a página anterior com JS

Neste artigo você vai aprender a como fazer um botão que volta para a página anterior com JavaScript, utilizando uma simples abordagem

fazer um botão que volta para a página anterior capa

Fala programador(a), beleza? Bora aprender mais sobre recursos de navegação com JavaScript!

Muitas vezes precisamos fazer com que um botão ou link volte para a página anterior quando clicado.

Isso é bem simples de ser feito com JavaScript.

Para fazer isso, basta utilizar o método history.back() da seguinte forma:

function voltarPaginaAnterior() {
  history.back();
}

document.getElementById("meu-botao").addEventListener("click", voltarPaginaAnterior);

Aqui, criamos uma função chamada voltarPaginaAnterior que utiliza o método history.back() para voltar para a página anterior.

Em seguida, adicionamos um evento de clique ao elemento cujo o id é “meu-botao”.

Formação Vibe Coding
Formação Recomendada

Formação Vibe Coding

Do Prompt ao Produto: Crie Software Real com IA

  • 474 aulas
  • 20 projetos
  • 39h 27min

Quando o usuário clicar no botão, a função será chamada e o usuário será redirecionado para a página anterior.

Mas e se quisermos fazer isso através de um link? Basta utilizar o atributo href da seguinte forma:

<a href="#" onclick="history.back()">Voltar</a>

Aqui, criamos um link cujo o atributo href é “#” (o que evita que o usuário seja redirecionado para outra página quando clicar no link).

Em seguida, adicionamos o evento de clique utilizando o atributo onclick e chamamos o método history.back() quando o usuário clicar no link.

Outra forma de criar a funcinalidade de voltar para página anterior

function voltarPaginaAnterior() {
  location.replace(document.referrer);
}

document.getElementById("meu-botao").addEventListener("click", voltarPaginaAnterior);

Aqui, criamos uma função chamada voltarPaginaAnterior que utiliza o método location.replace e a propriedade document.referrer para redirecionar o usuário para a página anterior.

Em seguida, adicionamos um evento de clique ao elemento cujo o id é “meu-botao”.

Quando o usuário clicar no botão, a função será chamada e o usuário será redirecionado para a página anterior.

E se quisermos fazer isso através de um link? Basta utilizar o atributo href da seguinte forma:

<a href="#" onclick="location.replace(document.referrer)">Voltar</a>

Aqui, criamos um link cujo o atributo href é “#” (o que evita que o usuário seja redirecionado para outra página quando clicar no link).

Em seguida, adicionamos o evento de clique utilizando o atributo onclick e chamamos o método location.replace com a propriedade document.referrer quando o usuário clicar no link.

Deixe um comentário contando o que achou deste artigo 🙂

Quer aprender mais sobre JavaScript? Confira o vídeo abaixo:

Conclusão

Neste artigo você viu como fazer um botão que volta para a página anterior com JavaScript

Utilizamos duas abordagens diferentes, agora basta você escolher a que encaixa melhor no seu projeto!

Está buscando a sua primeira vaga como Programador? Confira o nosso treinamento completo clicando aqui.

Uma plataforma de cursos com projetos completos, comunidade de alunos e muito mais!

Há também o nosso canal no YouTube, com muito conteúdo gratuito de qualidade!

history.back() ou history.go(-1)? Qual usar

Se você pesquisou um pouco, deve ter visto os dois por aí e ficado na dúvida

A real é que eles fazem a MESMA coisa: voltam uma página no histórico

function voltarPaginaAnterior() { history.go(-1) }

document.getElementById("meu-botao").addEventListener("click", voltarPaginaAnterior)

O history.back() é só um atalho pra history.go(-1)

A diferença é que o go() aceita um número, então ele te dá mais controle quando você quer pular mais de uma página de uma vez (a gente vê isso já já)

Ou seja: pra voltar uma página só, tanto faz, use o que achar mais legível =)

Como voltar mais de uma página com JavaScript

Às vezes uma página só não resolve, você quer jogar o usuário duas ou três telas pra trás

É aqui que o history.go() brilha, é só passar o número negativo de quantas páginas você quer voltar

function voltarDuasPaginas() { history.go(-2) }

document.getElementById("meu-botao").addEventListener("click", voltarDuasPaginas)

O -2 volta duas páginas, o -3 volta três, e por aí vai

E se quiser ir pra frente de novo? Usa o history.forward() ou o history.go(1), mesma lógica só que no sentido contrário

Perguntas frequentes

O botão voltar funciona sem JavaScript?

Com link puro dá pra usar o onclick chamando o history.back(), que é o que mostramos aqui. HTML sozinho, sem nenhum JavaScript, não tem um recurso nativo de voltar no histórico, então o history entra pra resolver isso

E se não existir página anterior?

Se o usuário abriu sua página direto, sem vir de nenhum lugar, o histórico não tem pra onde voltar e o botão simplesmente não faz nada. No caso do document.referrer isso fica em branco, então vale testar antes se você depende dele

Qual a diferença entre history.back() e location.replace(document.referrer)?

O history.back() anda no histórico do navegador, como se o usuário tivesse clicado no botão de voltar dele. Já o location.replace(document.referrer) manda pra URL de onde a pessoa veio e TROCA a entrada atual do histórico, então essa página não fica no caminho de voltar depois. São jeitos diferentes de chegar num resultado parecido, escolhe o que encaixa no seu projeto

Leia também

Subscribe
Notify of
guest

1 Comentário
Oldest
Newest Most Voted
Andre

Ola cheguei aqui em pesquisa no google. Seria possivel com este botao nativo do Android, ao inves de fazer voltar a pagina anterior, abrir uma outra pagina do projeto ?

Formações

Formação SAAS com IA

Formação SAAS com IA

Tire usas ideias do papel criando softwares com IA, integre pagamentos e lance seu projeto!

  • 291 aulas
  • 18 projetos
  • 24h 17min

Blog | Mais populares