Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

JavaScript: get and set variables in window.location.hash?

Does anyone have a good solution for getting and setting variables in window.location.hash?

Take a URL that looks like this:

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

What I'd like is an unstressful way - JavaScript or jQuery - to check the values of q and s when the page loads, and change them following events on the page.

I have found some code for getting hash variables, but nothing sensible for setting them.

Am I missing something really obvious, or do I need to roll my own solution (and release it!)?

Thanks.

like image 465
AP257 Avatar asked Feb 23 '11 18:02

AP257


2 Answers

Haven't used it but there is jHash

jHash allows you to work with the 'location.hash' value in a similar fashion to a server-side query string.

This library utilizes the HTML5 "onhashchange" event, but also includes a fall back to still allow the change notifications to work properly in older web browsers.

like image 182
macarthy Avatar answered Nov 07 '22 13:11

macarthy


jQuery BBQ can do this.

See also:

  • Get URL parameter with jQuery
  • Get QueryString values with jQuery

Edit as @gonchuki points out, jQuery.query can also do this.

like image 1
Matt Ball Avatar answered Nov 07 '22 13:11

Matt Ball