DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> 解決微信浏覽器Javascript無法使用window.location.reload()刷新頁面
解決微信浏覽器Javascript無法使用window.location.reload()刷新頁面
編輯:關於JavaScript     

場景是這樣子的,頁面在初始化時有一個ajax請求,在頁面上有一個按鈕,點擊的時候執行window.location.reload(),正常情況reload()後頁面依然會向後台發出請求,但在安卓的微信浏覽器中reoad後請求的一直是第一次打開頁面時請求的數據。可以理解為請求被緩存了,但沒有實測,也不知道是否是緩存。

解決方法是,使用window.location.href="window.location.href+隨機數" 代替 window.location.reload()。切記,一定要加隨機數,否則一樣不會起作用。當然也可以用一個a標簽,然後設置href="window.location.href + 隨機數"。

再進一步的話可以只針對微信浏覽器作此設置,那麼就得判斷是否微信浏覽器。可以通過window.navigator.userAgent進行判斷,結果是,Mozilla/5.0 (iPhone; CPU iPhone OS 9_3_2 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Mobile/13F69 MicroMessenger/6.3.16。根據關鍵字 MicroMessenger 來判斷是否是微信內置的浏覽器。判斷函數如下

function isWeiXin(){
 var ua = window.navigator.userAgent.toLowerCase();
 if(ua.match(/MicroMessenger/i) == 'micromessenger'){
  return true;
 }else{
  return false;
 }
}

以上就是本文的全部內容,了解更多JavaScript的語法,大家可以查看:《JavaScript 參考教程》、《JavaScript代碼風格指南》,也希望大家多多支持。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved