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


  • 相关阅读:
    测试计划设计
    测试方案
    使用gulp构建自动化工作流
    ESLint--定制你的代码规则
    Node.js学习笔记(一):快速开始
    React-Native性能优化点
    ES6笔记(一):ES6所改良的javascript“缺陷”
    windows下React-native 环境搭建
    使用ssh连接gitHub
    javascript中的prototype和constructor
  • 原文地址:https://www.cnblogs.com/stubborn-donkey/p/12978860.html
Copyright © 2011-2022 走看看