手機APP中使用history.back()返回沒有效果的解決

樣式是一個超連接A標籤,經過點擊事件來達到返回上一頁的效果。javascript

因此一般作飯是把A標籤的href寫成#,而後onClick事件,剛開始我只是當成一個普通點擊事件,而後使用JS進行返回。
寫法以下:
<a id="returnButton" onClick="javascript :history.back();" class="header_btn"><p class="returns_btn">返回</p></a> 
 
可是我發現一個問題,就是在嵌套到手機的APP裏面時,常常沒有效果,並且有時出現沒法鏈接的空白頁面。因此我在想是否是由於嵌套在APP裏面,因此出現了兼容問題,因此我查了一下是否是有這個問題。在網上有我的還在很說了這個問題,這個其實也沒什麼說的,說白了就是瀏覽器處理上的差別,我把網友的原話摘抄下來:
JavaScript中後退的寫法:history.back()或者history.go(-1)。
 
這種寫法在IE上便可實現咱們想要的效果,可是在FireFox和Chrome就會變得很悲催了。
FireFox:
只須要改爲以下方式: <a href="#" onclick="window.history.back()">返回</a>
 
Chrome:
Chrome比FireFox更難搞: <a href="#" onclick="window.history.back(); return false;">返回</a>
 
本人分析:對於Chrome來講,首先執行window.history.back(),執行完成以後再接着執行href="#",因此沒法返回。
加上 return false以後將再也不執行href="#",便能正常返回。
相關文章
相關標籤/搜索