zoukankan      html  css  js  c++  java
  • 安卓端检测浏览器返回问题

    上一篇文章说了在安卓和iOS微信浏览器监测页面关闭返回的方法,当时测试时是有效果的,后来在安卓端不起作用了,只有浏览器中没有页面缓存重新加载时,才有作用

    初步判断是页面首次加载时window.onbeforeunload起作用了,下一次进入读取的缓存页面,window.onbeforeunload不起作用了

    window.addEventListener('pagehide', function () {})在iOS上没有问题,但是在安卓上不管第一次进入还是从缓存读取都不起作用,应该是浏览器兼容问题

    通过debugmm.qq.com/?forcex5=true或者debugstbs.qq.com开启微信浏览器为X5内核后,发现安卓端可以用了,window.addEventListener('pagehide', function () {})起作用了

    debugmm.qq.com/?forcex5=false关闭X5内核后,又不起作用了

    发现

    window.addEventListener( 'blur', function() { console.log( 'blur' ); } );
    window.addEventListener( 'focus', function() { console.log( 'focus' ); } );
    可以检测点击了关闭浏览器的功能,但是返回监测不到

    经过测试发现

    window.onbeforeunload = function () {
    //窗口关闭前
    saveExam(that)

    };能监测到返回

    所以最后解决方式是在安卓里用

    window.addEventListener( 'blur', function() { console.log( 'blur' ); } );结合window.onbeforeunload和 window.addEventListener("popstate", function (e) {
    iOS里用pagehide


  • 相关阅读:
    XCode Playground Overview
    Swift开发学习(二):Playground
    swift网址
    swift关于is和as的解释
    Swift之 ? 和 !
    Swift 学习之二十一:?和 !(详解)
    Swift学习三
    Makefile project
    20171110面试笔记 服务器端程序员+C/C++开发
    关键字
  • 原文地址:https://www.cnblogs.com/stubborn-donkey/p/12978860.html
Copyright © 2011-2022 走看看