h5页面返回到微信首页

h5页面返回到微信首页等同于关闭当前打开页面

使用微信内置WeixinJSBridge.call直接关闭

setTimeout(function() {
	//这个可以关闭安卓系统的手机
	document.addEventListener(
		"WeixinJSBridgeReady",
		function() {
			WeixinJSBridge.call("closeWindow");
		},
		false
	);
	//这个可以关闭ios系统的手机
	WeixinJSBridge.call("closeWindow");
	}, 300);
复制代码

监听页面离开,添加历史记录

pushHistory();
 //监听触发物理返回按钮
window.addEventListener("popstate",function() {
     //do something
     console.log("我监听到页面离开了")
     f_close();//执行关闭浏览器窗口,返回公众号首页
     return;
});

function pushHistory() {
     //该方法添加了一个历史记录,路径为'#',保证了不刷新页面,不直接后退
     var state = { 
         title: "title", 
         url: "#"
     }; 
     window.history.pushState(state, "title", "#"); 
}
function f_close(){
     //微信内部浏览器私有接口WeixinJSBridge
     if(typeof(WeixinJSBridge)!="undefined"){
         //微信关闭当前页面
         WeixinJSBridge.call('closeWindow');
     }else{
         //navigator.userAgent.indexOf来判断浏览器类型
         if (navigator.userAgent.indexOf("MSIE") > 0) {  
             if (navigator.userAgent.indexOf("MSIE 6.0") > 0) {  
                 //打开新窗口并且关闭本窗口不弹出要关闭窗口前的提示
                 只支持IE6不支持IE7,IE8
                 window.opener = null; 
                 window.close();  
             } else {  
                 //window.open是用来打开一个新窗口的函数!
                 window.open('', '_top'); 
                 window.top.close();  
             }  
         } else if (navigator.userAgent.indexOf("Firefox") > 0) {  
             window.location.href = 'about:blank ';  
         } else {  
             window.opener = null;   
             //支持IE7,IE8的问题
             window.open('', '_self', '');  
             window.close();  
         }
     }	
    
}
复制代码

转载于:https://juejin.im/post/5d01f095f265da1bc37f0947

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值