A janela do navegador possui um objeto de histórico, que é usado para salvar o histórico de navegação.
Se a janela atual visitou três URLs, o objeto histórico inclui três itens e a propriedade history.length é igual a 3.
O objeto histórico fornece uma série de métodos que permitem mover-se entre o histórico de navegação:
window.history.back(): Vai para a página visitada anteriormente, equivalente à tecla Voltar do navegador.
window.history.forward(): Move para a próxima página visitada, equivalente à tecla de avanço do navegador.
window.history.go(num): aceita um inteiro como parâmetro e vai para a página especificada pelo inteiro. Por exemplo, go(1) é equivalente a forward() e go(-1) é equivalente a back(. ).
window.history.pushState(): HTML5 adiciona dois novos métodos ao objeto histórico, window.history.pushState() e window.history.replaceState(), que são usados para adicionar e modificar registros no histórico de navegação.
Nota: 1. Se a posição movida exceder o limite do histórico de acesso, os três métodos acima não reportarão um erro, mas falharão silenciosamente.
2. Durante a configuração, a página geralmente é carregada do cache do navegador, em vez de solicitar novamente ao servidor o envio de uma nova página da web.
Vamos nos concentrar em: window.history.pushState()window.history.pushState(state, title, utl), cria uma entidade de histórico na página. Adicione diretamente ao histórico.
Entre os parâmetros:
estado: um objeto de estado relacionado ao URL especificado. Quando o evento popstate for acionado, esse objeto será passado para a função de retorno de chamada. Se este objeto não for necessário, null poderá ser preenchido aqui.
title: O título da nova página, mas todos os navegadores atualmente ignoram esse valor, então null pode ser preenchido aqui.
url: o novo URL deve estar no mesmo domínio da página atual. A barra de endereço do seu navegador exibirá este URL.
Nota: O método pushState não acionará uma atualização de página, mas fará com que o objeto histórico seja alterado e a barra de endereço reagirá.
Exemplo de implementação:HTML5 escuta e intercepta o método da chave de retorno do Android da seguinte maneira:
1. Ouça o evento popstate
window.addEventListener(popstate, function(){ //doSomething}, false)
2. Cancele a operação de retorno padrão, ou seja, ouça a interceptação da chave de retorno: adicione uma entidade de histórico vazia em substituição à entidade de histórico original
window.history.pushState(null, null, #);
Exemplo:
<!DOCTYPE html><html> <meta name=viewport content=width=device-width> <script type=text/javascript> var count = 0; (popstate, função (e) { window.history.pushState (null, null, #); document.getElementById ('logView').innerHTML = Retorno de cliques do usuário + (++count) }) </script><body> <p id=logView>test</p></body></html>
O texto acima é todo o conteúdo deste artigo. Espero que seja útil para o estudo de todos. Também espero que todos apoiem a Rede VeVb Wulin.