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


  • 相关阅读:
    【uniapp】改善中大型uniapp小程序项目开发体验
    vite试玩:老项目启动从6分钟到秒开
    修剪AST树减少webapck打包尺寸
    librispeech数据集下载
    语音识别性能评估方法
    2021.12.11 物联网考试
    2021.12.15 课程总结+加分项
    2021.12.9 观影大数据分析
    2021.12.8 Docker服务
    2021.12.10 阿里云服务器创建
  • 原文地址:https://www.cnblogs.com/stubborn-donkey/p/12978860.html
Copyright © 2011-2022 走看看