Change Tab Title with JavaScript
Changing the tab (or window) title is an age old practice. Gmail does it to notify the user of a new chat message and this blog does it to update the tab title after a new page loads via AJAX. How is it done? By setting a property on the document
object, of course:
That property, of course, is document.title
:
document.title = 'Hello!'; // New title :)
One common misconception is that you change the window.title
property, but you must use the document
object, otherwise you'll see no effect. You'll oftentimes see a setInterval
used with document.title
to quickly change title to get the user's attention.
![7 Essential JavaScript Functions]()
I remember the early days of JavaScript where you needed a simple function for just about everything because the browser vendors implemented features differently, and not just edge features, basic features, like addEventListener
and attachEvent
. Times have changed but there are still a few functions each developer should...
![39 Shirts – Leaving Mozilla]()
In 2001 I had just graduated from a small town high school and headed off to a small town college. I found myself in the quaint computer lab where the substandard computers featured two browsers: Internet Explorer and Mozilla. It was this lab where I fell...
![Create a Dojo-Powered WordPress Website View]()
Yesterday I showed you WordPress' awesome JSON plugin named JSON API. Now that I can get my blog posts in JSON format, it's time to create an awesome AJAX'ed web app with that data. I've chosen to use the power of Dojo and Dijit to...
![Control Element Outline Position with outline-offset]()
I was recently working on a project which featured tables that were keyboard navigable so obviously using cell outlining via traditional tabIndex=0
and element outlines was a big part of allowing the user navigate quickly and intelligently. Unfortunately I ran into a Firefox 3.6 bug...
This is great – in 15 years of working in web design the thought of changing page title never crossed my mind. Could be useful though, cheers!
If you want to be evil about it change it to:
And see how many people wonder what is unread :)
If that’s not in evil.js, it should be added immediately
Thats pure evil.
That’s really nice – I always did that via
getElementsByTagName
andinnerHTML
, but this solution’s way more convenient.Of-course this is tricky. It also affects DOM document ( element in HTML). Also In XUL, retrieving
document.title
before document gets completely loaded has unfixed behavior (document.title
might pull an empty result or may effect-less.)I’m happy to be corrected on this, but if you change the tab title after a screen reader initially caches the page, they are not informed of this change. So, if you are changing the page for a relevant reason, could this be a problem? The page title is the first thing screen readers hear when a page loads, and it is like a road map to where they are, where they want to be.
This is such a simple tweak and can make us look our website state of the art!