Em aplicativos reais, geralmente precisamos implementar a necessidade de clicar na retorna, traseira, página anterior e outros botões em aplicativos e navegadores móveis para fechar a página, ajustar à página especificada ou executar outras operações. Portanto, como monitorar os eventos ao clicar no botão de retorno de aplicativos como WeChat, Alipay, Baidu Nuomi, Baidu Wallet, etc. ou a página anterior do navegador ou o botão traseiro.
Acredito que muitos amigos são como eu, que procuraram em Baidu e Sogou há muito tempo, mas não encontraram um método.
Aqui está como monitorar:
Primeiro de tudo, precisamos entender a história do navegador.
Como você sabe, podemos usar o histórico da janela JavaScript na página e voltar para a página anterior. No entanto, devido a razões de segurança, o JavaScript não permite modificar o link da URL existente na história, mas você pode usar o método PushState para adicionar links de URL ao histórico e fornecer monitoramento de eventos PopState para exibir o URL da pilha de histórico. Como o monitoramento de eventos PopState é fornecido, podemos monitorá -lo.
Clique no botão para ouvir o código de implementação para o botão de retorno, volta e página anterior:
window.adDeventListener ("PopState", function (e) {alert ("Eu ouvi o evento de botão de retorno do navegador"); // implemente sua própria função de acordo com suas próprias necessidades}, false);Embora tenhamos ouvido o evento traseiro, a página ainda retornará à página anterior, por isso precisamos usar o PushState para adicionar um URL desta página para representar esta página. Todo mundo sabe muito bem que é #
função pushHistory () {var state = {title: "title", url: "#"}; window.history.pushstate (estado, "title", "#"); }Ao entrar nesta página, pressionamos uma conexão local com esse histórico. Ao clicar nas operações de retorno, volta e página anterior, ouça e implemente suas próprias operações no código de escuta.
Aqui está o código completo:
$ (function () {pushHistory (); window.addeventListener ("popstate", function (e) {alert ("Eu ouvi o evento de botão de retorno do navegador"); // implementa suas próprias funções de acordo com suas necessidades}, false); function () {var estatal; "#");O conteúdo acima é apenas o código principal listado pelo editor para todos. Você pode adicionar, modificar e excluir o código de acordo com suas necessidades. Se você encontrar alguma dúvida durante o processo de referência a este código, deixe -me uma mensagem e o editor responderá a todos a tempo!