javascript - 微信 H5 授权 返回键
问题描述
需求是这样:
1. 微信公众号点击菜单进入a页面,a页面需要获取用户昵称和头像(因此需要授权);2.从a 页面跳到 b1,b2,b3.....页面;3.当在 a页面时 ios手机点击左上角 “返回” 或者 其它手机物理返回键时 要求返回到微 信公众号;
但是现在 不做处理的时候 点一下返回只能返回到 微信授权 页面,然后果几秒,会跳转到a页面;也很有可能出错。然后我就相伴处理在 a 页面添加代码:以下代码:
history.pushState(’x-back’, null);function onPopState (event) {WeixinJSBridge.call(’closeWindow’);};window.addEventListener(’popstate’, onPopState);
但是仍然会有问题:
安卓手机问题解决;ios碰到的问题是:从a 跳到b1 ...页面;在b1 页面ios 点左上角返回菜单时 a页面会闪一下;直接退出到公众号里面了,相当于跳过a页面;a页面 就闪了一下也就一秒;每次测试都这样;我不明白为啥从b返回到a 会触发a页面的 监听 返回键的函数。。。。
问题解答
回答1:var isPageHide = false;window.addEventListener('pageshow', function() { if(isPageHide) { window.WeixinJSBridge.call('closeWindow'); //window.location.reload();//自己重新刷新,这一步相当于模拟了跳转 }});window.addEventListener('pagehide', function() { isPageHide = true;});
回答2:求 解答啊。。。。。
回答3:微信开发文档里面提到2、对于已关注公众号的用户,如果用户从公众号的会话或者自定义菜单进入本公众号的网页授权页,即使是scope为snsapi_userinfo,也是静默授权,用户无感知。
如果用户已关注公众号或者自定义菜单进入本公众号的网页授权页的话,是静默授权,不会出现微信授权的啊。
相关文章:
1. python3.5 urllib.parse.unquote 乱码2. html5 - node静态资源服务器设置了Cache-Control,但浏览器从来不走3043. android - ionic应用打包部署了,但是连接不上服务器,就连写一个a标签链接到百度都不可以4. mysql - 这里的sql语句该怎么写5. Mysql 关于 FOUND_ROWS() 和 ROW_COUNT() 函数6. mysql - msyql 判断字段不为空 简单方法7. mysql - laravel 子查询的问题8. 老师百度网盘分享一下WampServer的包啊,我们下载几kb要下载一天的.9. mysql中的collate关键字是什么意思?10. mysql - 使用update语句同时更新两个表的问题?
