2014-02-21 132 views
2

我使用HTML5在加載後更改我的網頁的網址。這是因爲真正的URL顯示了我不想顯示的長cacheID。我使用HTML5 History API來更改當前窗口的URL,現在用戶可以共享併爲URL添加書籤,而無需煩人的cacheID。History.js:我只想更改網址,無需管理歷史記錄

這是我使用的代碼,並在頁面加載它執行:它執行

<script type="text/javascript"> 
window.history.pushState(null, "Title", "/url"); 
</script> 

後,我在我的地址欄看到:http://mydomain.com/url

這是一件好事。

現在我想使用History.js,以便我的網站可以支持使用舊版瀏覽器的用戶。

我該怎麼辦?

首先,我包括此:

<script src="http://browserstate.github.io/history.js/scripts/bundled/html4+html5/jquery.history.js" type="text/javascript"></script> 

然後,我把我以前使用的

<script type="text/javascript"> 
window.history.pushState(null, "Title", "/url"); 
</script> 

它不工作相同的代碼。因爲我認爲我必須創建新的對象,但我不知道如何去做。任何幫助,將不勝感激。謝謝。

+0

你有沒有試過我的建議? – aknuds1

+0

是的,我剛剛加入: 但它仍然無法在IE8中 – user3338777

+0

在history.js之前或之後包含?你可以做一個jsfiddle嗎? – aknuds1

回答

0

在我看來,你已經忘了包含jQuery,因爲你包含一個爲此而構建的History.js版本。如果沒有在jquery.history.js之前添加jQuery,後者將會失敗。

編輯

包括jQuery的 jquery.history.js後,做window.History.pushState(null, "Title", "/url");。注意歷史以大寫字母H開頭,這很重要。

有關如何使用History.js,請參閱我的fiddle。我只用Chromium試過,但看看它是否適用於IE8。