2014-05-07 45 views
2

爲了避免不必要的重新加載整個頁面,我使用Ajax從多個步驟(或從用戶體驗角度看多個頁面)從一個步驟到另一個步驟。Ajax vs單獨的頁面:如何處理按'後退'?

工程都很好。但是,從技術上講,它們在整個過程中始終保持在同一個頁面上(並保留相同的URL)。我在佈局中有'返回'按鈕回到上一個stap,但是如果訪問者按下他的瀏覽器的'後退'按鈕,我就搞砸了。

處理這個問題的最佳方法是什麼?

+1

'history.pushState'? 'window.onbeforeunload'? – Scimonster

回答

0

Sammy.js可讓您使用哈希路由這是目前做支持後退按鈕

0

我總是去,正在建立一個客戶端的URL路由器。
我嘗試了幾個路由器,但我總是回到backbone.js,因爲它是最靈活的[我嘗試過的]。
Here is a little article我發現有關backbone.js路由器。

另一件事,是與Backbone.js的路由器好的是:

對於那些還不支持歷史API的瀏覽器,路由器 處理優美回退和透明的翻譯片段 版網址。