pjax works by grabbing HTML from your server via Ajax and replacing the content of the body on your page with the ajax loaded HTML body. It then updates the browser's current URL using HTML5 pushState, without reloading your page layout or any other resources (JS, CSS), giving the appearance of a fast, full page load. But really it's just Ajax and pushState. For browsers that do not support pushState, link clicks will result in a normal full page load.
We are using this library on our own website. You can navigate through internal links to see how fast is it: helabs.com.br.