2011-02-23 44 views
6

有沒有人有一個很好的解決方案獲取和設置window.location.hash變量?JavaScript:在window.location.hash中獲取和設置變量?

採取這一看起來像這樣的URL:

domain.com/#q=1&s=2 

我想是unstressful方式 - 的JavaScript或jQuery的 - 要檢查的qs頁面加載時的值,並改變它們以下頁面上的事件。

我發現了some code for getting hash variables,但沒有任何明智的設置它們。

我錯過了一些非常明顯的東西,還是我需要推出我自己的解決方案(併發布它!)?

謝謝。

+0

正則表達式? ........ – 2011-02-23 18:25:11

+0

如果需要,我可以編寫自己的正則表達式 - 只是想知道是否有一個更整潔的方式。 – AP257 2011-02-23 18:37:10

+0

使用正則表達式,設置/獲取是一行代碼。這是最簡單的方法。 – 2011-02-23 18:47:18

回答

3

還沒有使用它,但有jHash

jHash讓您與 「的location.hash的價值以類似的方式 工作,服務器端的查詢字符串。

這個庫利用HTML5 「onhashchange」事件,但也 包括一個回落仍然允許 變化通知到老版瀏覽器工作正常 。

0

JHash沒有爲我工作,因爲我希望它立即觸發路線。我個人使用routie

它可以讓你像jHash一樣進行高級路由,但會在頁面加載時正確觸發。

下面將匹配example.com/#users/john

routie('users/:name', function(name) { 
    //name == 'bob'; 
});