摘要:應用場景在微信開發菜單的時候,遇到一個問題,當從菜單進去的頁面后,如果立刻按返回鍵,則出現返回到微信公眾號的微信界面。并沒有任何提示,但我看到京東微信公眾號點擊進去,立刻按返回鍵時是有提示的,在微信開發文檔中并未找到相關的說明。
應用場景
方案原理在微信開發菜單的時候,遇到一個問題,當從菜單進去的頁面后,如果立刻按返回鍵,則出現返回到微信公眾號的微信界面。并沒有任何提示,但我看到【京東微信公眾號】點擊進去,立刻按返回鍵時是有提示的,在微信JSSDK 開發文檔中并未找到相關的說明。注意【京東】右上角,都是可以自定義的。
方案代碼利用HTML5的window.history.pushState特性,例如 當從A頁面進入時,先判斷window.history.length==1那么調用window.history.pushState 寫進一個空歷史記錄。并且監聽返回鍵,當按下返回鍵時(我們是沒辦法阻止返回事件的,但由于上一個歷史記錄是空白的,所以的還是當前頁面。),監聽到返回事件 使用layer彈框插件提示,“您確定要返回微信嗎?” 或者其他。點擊【再逛逛】,則再次寫入空白歷史記錄,點擊【確定】或者再次點擊【返回鍵】則關閉微信瀏覽器。
if(window.history.length==1){//判斷是第一次從微信菜單進入頁面 //寫入空白歷史記錄 pushHistory(); } //延時監聽 setTimeout(function () { //監聽物理返回按鈕 window.addEventListener("popstate", function(e) { layer.open({ content: "您確定要返回微信嗎?", btn: ["確認", "再逛逛"], shadeClose: false, yes: function(){ //調用微信瀏覽器私有API關閉瀏覽器 WeixinJSBridge.call("closeWindow"); }, no: function(){ //點擊【再逛逛】,再次寫入空白歷史記錄 pushHistory(); } }); }, false); }, 300); /** * [pushHistory 寫入空白歷史記錄] * @author 邱先生 * @copyright 煙火里的塵埃 * @version [V1.0版本] * @date 2016-07-30 * @return {[type]} [description] */ function pushHistory() { var state = { title: "title", url: "#" }; window.history.pushState(state, "title", "#"); }
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/86470.html
摘要:應用場景在微信開發菜單的時候,遇到一個問題,當從菜單進去的頁面后,如果立刻按返回鍵,則出現返回到微信公眾號的微信界面。并沒有任何提示,但我看到京東微信公眾號點擊進去,立刻按返回鍵時是有提示的,在微信開發文檔中并未找到相關的說明。 應用場景 在微信開發菜單的時候,遇到一個問題,當從菜單進去的頁面后,如果立刻按返回鍵,則出現返回到微信公眾號的微信界面。并沒有任何提示,但我看到【京東微信公眾...
摘要:被美麗說少女粉吸引,就想著自己也寫一個來練練手,正好最近在學習微信小程序。微信小程序的組件真的很強大,以前寫圖片切換功能都好麻煩,小圓點的切換都要自己寫。 被美麗說少女粉吸引,就想著自己也寫一個來練練手,正好最近在學習微信小程序。接下來讓我們分享一下我的學習歷程吧! 選題 其實糾結了好久該仿什么,看到別人都寫的差不多了,自己卻還沒有動手,很著急,那兩天一直在思考在查找,弄得自己特別煩躁...
閱讀 2265·2023-04-25 23:15
閱讀 1917·2021-11-22 09:34
閱讀 1546·2021-11-15 11:39
閱讀 955·2021-11-15 11:37
閱讀 2152·2021-10-14 09:43
閱讀 3493·2021-09-27 13:59
閱讀 1506·2019-08-30 15:43
閱讀 3454·2019-08-30 15:43