2014-07-11 68 views
3

不知道我在做什麼錯,但是這個代碼小一點不起作用:HTML5歷史pushState的工作不

window.history.pushState("foo", "foo", "foo"); 

它將生成以下錯誤火狐

TypeError: window.history.pushState is not a function 
+1

沒有你看看[這裏?](https://developer.mozilla.org/en-US/docs/Web/Guide/API/DOM/Manipulating_the_browser_history) – Banana

+0

什麼瀏覽器是否在你遇到這個錯誤時使用?如果您的瀏覽器[支持歷史api](http://caniuse.com/#feat=history),請檢查它。 – complex857

+0

@ complex857瀏覽器是(正如後文中提到的):firefox 29 – nablex

回答

0

顯然我包括腳本的一個有一個聲明:

var history = ...; 

我不知道,根上的所有變量實際上都在窗口範圍內,所以自定義歷史變量var實際上覆蓋了原始的window.history。

0

請嘗試爲

假設http://mozilla.org/foo.html執行下面的JavaScript:

var stateObj = { foo: "bar" }; 
history.pushState(stateObj, "page 2", "bar.html"); 

應該按照工作Mozzila。

請找到更多關於Mozilla Link