2014-01-23 24 views
1

我使用History.js並且所有工作都正常。引用url引發了statechange事件

除了在URL中有報價時。

然後,代替正常工作,頁面加載並突然狀態變化事件被觸發,我的綁定函數被調用。

這發生在用戶打我的網站有人喜歡在Facebook上後,他們點擊了鏈接,Facebook的增加了大量的URL參數,例如:&action_type_map={"183745848938475":"og.likes"}

一旦用戶到達我的網站一個「在URL中的statechange被調用(在頁面加載後)和頁面認爲用戶試圖在某處導航。

爲什麼事件被觸發,我能做些什麼來阻止這種行爲的任何想法?

回答

0

趕上statechange事件,做一些消毒或防止它的fr通過返回false來正常執行。

return false; 

見這太問題:

Statechange is firing whenever i do a push-state

+0

不知道你的意思,在這裏使用encodeURIComponent方法? – Guy

+0

我遇到的問題是在url中有引號時觸發statechange事件。鏈接是外部的(Facebook在這種情況下創建它),所以我無法控制它。 – Guy

+0

查看我的更新回答 – roland