I\'ve just opened a blank HTML page with some little amount of base tags (like html, body, head, etc) in Google Chrome, and tried to execute the following command in console:
Currently, the title is being changed in all modern browsers using history.push(), but you have to change the URL. If you only add "#locationhash" it won't change the title, which makes sense.
It seems current browsers don't support pushState title attribute. You can easily achieve the same thing by setting it in JS.
document.title = "This is the new page title.";
Following code will change the page title when you use history.pushState
$(document).prop('title','your page title');
It is working with IE also.
Setting the title using document.title
is not recommended if you want good SEO.
History.js gracefully supports the HTML5 History/State APIs (pushState, replaceState, onPopState) in all browsers. Including continued support for data, titles, replaceState. Supports jQuery, MooTools and Prototype.
Demo
Source