Video Games of the 1980s

Photo of arcade game Space Invaders.

Progressive
Pushstate
Demo

This demo will show how progressive pushstate works. With it, you can have links and forms change the state of the page via the HTML5 History API's state object. This is done by taking all CGI variables inside a link or form and using them to change the state of the page via JavaScript instead of going back to the server to load a different page. Furthermore, if the URL of this resultant page is shared via email or social media, the web server can parse the query string and render the page's state on the server, thereby decreasing rendering time at page load time (which is useful if the page is very JavaScript heavy and page load takes a while)

To illustrate the point, choose any of the menu items in the header of this page. The content will be loaded via Ajax and the URL changes. Also note the neat animation that happens when the page changes state — this is impossible to do if reloading the whole page from the server.

Text on the video game pages taken from Wikipedia