2012-02-14 26 views
0

我正在構建一個ajax網站,當我點擊導航按鈕時它會加載頁面,但是當我重新加載頁面時出現問題。一旦我重新加載頁面,頁面默認回到加載main.html,不管網址是什麼。我的散列有點不同,它看起來像這樣/#!/。我怎樣才能檢索的網址和鬆散除了/Path/以外的一切。作爲參考,這是我的一個網址看起來像http://mysite.com/#!/account/settings。如何獲得url的account/settings部分。如果我有道理,非常感謝。Javascript檢索字符後散列

+0

你能格式化你的問題好?這是很難看... – elclanrs 2012-02-14 04:04:31

+0

@elclanrs你走了,希望我更具體一點。 – 2012-02-14 04:18:20

回答

1

使用正則表達式。我不是在正則表達式的最好的,但這個工程:

var oldLoc = 'http://mysite.com/#!/account/settings', 
    patt = /#!(.+)/, 
    newLoc = oldLoc.match(patt)[1]; // This returns `/account/settings` 

http://jsfiddle.net/elclanrs/WUL6a/

+0

好,非常感謝。這工作完美! – 2012-02-15 02:55:01

1

試過window.location.hash.replace('#!/', '')

順便說一句,你應該停止使用hashbangs,並開始使用HTML5 History API :)

+0

糾正我,如果我錯了,但不會取代哈希?我不想擺脫哈希,只是找出散列後的路徑。 – 2012-02-14 04:36:28

+1

不,它會返回散列並刪除#!/它的一部分。你爲什麼不嘗試並找出:)? – 2012-02-14 04:38:49

+0

好的,謝謝,抱歉,我無法嘗試它,我在我的iPhone上。剛剛嘗試過,它刪除了#!但是如何刪除'http:// mysite.com /'或'http:// www.mysite.com /'?謝謝 – 2012-02-15 02:54:16