搜尋

首頁  >  問答  >  主體

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页面的 监听 返回键的函数。。。。
世界只因有你世界只因有你2739 天前1603

全部回覆(3)我來回復

  • 陈方

    陈方2018-09-25 16:55:10

    var isPageHide = false;
    window.addEventListener('pageshow', function() {
     if(isPageHide) {
       window.WeixinJSBridge.call('closeWindow');# /# window.location.reload();//自己重新刷新,這一步相當於模擬了跳轉
     }
    });
    window.addEventListener('pagehide', function() {
    isPageHide = true;
    });

    回覆
    0
  • 学习ing

    学习ing2017-06-26 10:57:23

    求 解答啊。 。 。 。 。

    回覆
    0
  • 某草草

    某草草2017-06-26 10:57:23

    微信開發文件裡面提到
    2、對於已關注公眾號的用戶,如果用戶從公眾號的會話或自訂選單進入本公眾號的網頁授權頁,即使是scope為snsapi_userinfo,也是靜默授權,用戶無感知。

    如果使用者已追蹤公眾號或自訂選單進入本公眾號的網頁授權頁的話,是靜默授權,不會出現微信授權的啊。

    回覆
    0
  • 取消回覆