控制ios微信内置浏览器返回键和安卓物理返回键路径 pageshow

352 阅读1分钟
//定义一个变量          
var bool = false; 

//进入页面时bool置为false,防止ios立即执行popstate          
window.addEventListener('pageshow', function () {                    
    bool = false;               
    setTimeout(function(){   //定时器延迟将bool置为true                        
       bool = true;               
    },500)       
 });           

pushHistory();   

window.addEventListener("popstate", function(e) {                 
   if(bool){                        
       window.location.href = 'html/index.html'; //指定返回路径               
   };       
}, false);

// 写入空白历史路径    
function pushHistory(){         
   var state = {                         
      title: "title",                        
      url: "#"              
   };                 
   window.history.pushState(state, "title", "#");         
}