JavaScript:在window.location.hash中获取和设置变量?

时间:2011-02-23 18:22:37

标签: javascript jquery

有没有人有一个很好的解决方案来获取和设置window.location.hash中的变量?

获取如下所示的网址:

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

我想要的是一种无痛的方式 - JavaScript或jQuery - 在页面加载时检查qs的值,并在页面上的事件后更改它们。

我找到了some code for getting hash variables,但设置它们并不合理。

我是否遗漏了一些非常明显的东西,或者我是否需要推出自己的解决方案(并发布它!)?

感谢。

3 个答案:

答案 0 :(得分:3)

没有使用它,但有jHash

  

jHash允许你使用   'location.hash'值类似   时尚到服务器端的查询字符串。

     

此库使用HTML5   “onhashchange”活动,也是   包括回退仍然允许   更改通知工作   适用于较旧的网络浏览器。

答案 1 :(得分:1)

jQuery BBQ可以做到这一点。

另见:


修改 @gonchuki指出,jQuery.query也可以这样做。

答案 2 :(得分:0)

JHash对我不起作用,因为我希望它能立即触发路线。我个人使用routie代替。

它允许您像jHash一样进行高级路由,但会在页面加载时正确触发。

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

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