• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >html5 > 很多人都不知道的监听微信、支付宝等移动app及浏览器的返回、后退、上一页按钮的事件方法

很多人都不知道的监听微信、支付宝等移动app及浏览器的返回、后退、上一页按钮的事件方法

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-03

本文主要包含微信,支付宝,移动app等相关知识,匿名希望在学习及工作中可以帮助到您
在实际的应用中,我们常常需要实现在移动app和浏览器中点击返回、后退、上一页等按钮实现自己的关闭页面、调整到指定页面或执行一些其它操作的

需求,那在代码中怎样监听当点击微信、支付宝、百度糯米、百度钱包等app的返回按钮或者浏览器的上一页或后退按钮的事件呢。

我相信很多朋友像我一样,在百度、搜狗里面搜索很久都没找到方法。下面就来告诉大家怎样监听的方法:

首先我们要了解浏览器的history。大家知道在页面中我们可以使用JavaScript window history,后退到前面页面,但是由于安全原因javascript不允许修改

history里已有的url链接,但可以使用pushState方法往history里增加url链接,并且提供popstate事件监测从history栈里弹出url。既然有提供popstate事件

监测,那么我们就可以进行监听。

返回、后退、上一页按钮点击监听实现代码:

window.addEventListener("popstate", function(e) {  
        alert("我监听到了浏览器的返回按钮事件啦");//根据自己的需求实现自己的功能  
    }, false);

虽然我们监听到了后退事件,但是页面还是会返回上一个页面,所以我们需要使用pushState增加一个本页的url,代表本页,大家都非常清楚是#

function pushHistory() {  
        var state = {  
            title: "title",  
            url: "#"  
        };  
        window.history.pushState(state, "title", "#");  
    }

当进入该页面,我们就给这个history压入一个本地的连接。当点击返回、后退及上一页的操作时,就进行监听,在监听代码中实现自己操作。

下面是完整的代码:

$(function(){  
    pushHistory();  
    window.addEventListener("popstate", function(e) {  
        alert("我监听到了浏览器的返回按钮事件啦");//根据自己的需求实现自己的功能  
}, false);  
    function pushHistory() {  
        var state = {  
            title: "title",  
            url: "#"  
        };  
        window.history.pushState(state, "title", "#");  
    }  
      
});

注:部分代码参考网上!

后续问题收集:

1.在微信中进入页面就触发了popstate事件。

解决方法:定义boolean 变量bool=false。在页面加载后,采用setTimeout方法设置1.5s的超时,在超时执行方法中设置bool=true。

在popstate监听当中增加对bool的判断,当bool=true时,执行内容。具体代码如下:

$(function(){  
            pushHistory();  
            var bool=false;  
            setTimeout(function(){  
                  bool=true;  
            },1500);  
            window.addEventListener("popstate", function(e) {  
              if(bool)  
                {  
                        alert("我监听到了浏览器的返回按钮事件啦");//根据自己的需求实现自己的功能  
                }  
                pushHistory();  
                  
        }, false);  
        });

以上就是 很多人都不知道的监听微信、支付宝等移动app及浏览器的返回、后退、上一页按钮的事件方法的内容,更多相关内容请关注微课江湖()!

您可能想查找下面的文章:

  • HTML5微信播放全屏问题的解决方法
  • HTML5新特性之用SVG绘制微信logo
  • 基于html5 DeviceOrientation 实现微信摇一摇功能
  • 微信浏览器取消缓存的方法
  • html5实现微信打飞机游戏
  • HTML5仿手机微信聊天界面
  • 如何开发一款堪比APP的微信小程序(腾讯内部团队分享)
  • H5微信支付之引入微信的js-sdk包失败的解决方法
  • 关于html5 canvas 微信海报的分享介绍
  • 如何解决微信通过H5页面直接打开本地app

相关文章

  • 2018-12-03html5 兼容IE6结构的实现代码_html5教程技巧
  • 2018-12-03HTML5 WebG 的3D网络拓扑结构图
  • 2018-12-03html5实现分层屏幕适配
  • 2017-08-06html5的localstorage详解
  • 2018-12-03h5 Canvas中Fill 与Stroke文字效果实现实例
  • 2018-12-03利用HTML5 Canvas制作一个简单的打飞机游戏_html5教程技巧
  • 2018-12-03h5History 模式的实例教程
  • 2018-12-03有关视频破碎重组的文章推荐3篇
  • 2018-12-03HTML5实践-使用CSS3 Media Queries实现响应式设计的代码分享
  • 2018-12-03input file上传文件样式支持html5的浏览器解决方案_html5教程技巧

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • html5图片上传预览示例分享
    • HTML5实战教程———开发一个简单漂亮的登录页面
    • HTML5 script元素async、defer异步加载使用介绍
    • 40 个 HTML5 面试题(含答案)
    • HTML5本地存储之localStorage、sessionStorage的具体分析
    • HTML5 history新特性pushState、replaceState及两者的区别
    • HTML5中SVG 2D笔画与填充的详细介绍
    • Html5 Canvas Image的图文代码详解(一)
    • 如何使用HTML5 File接口在web页面上使用文件下载
    • HTML5标签小集

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有