navbar.js

Practical use

Dynamic page navigation

Version requirement

JavaScript 1.1

Function

navbar()

This source file contains only one function, but it’s a good one. Suppose you have on your web site several pages of content, each with a navigation bar of links to all the other pages. Wouldn’t it be great if JavaScript could make a smart nav bar that included links to all other pages on the site except the one currently loaded? Figure 6.12 shows ch06\astronomy.html. The nav bar contains links to the other pages on the site: Other Sciences, Sports, Musicians’ Corner, and Cool People. Figure 6.13 shows the document that loads after following the People link. Now look at the nav bar: Astronomy, Other Sciences, Sports, and Musicians’ Corner. There’s no link for People because it’s already loaded. You can do this for as many pages as you like, and if documents change, you need to make changes only in navbar.js. This will save plenty of time.

The code for this is surprisingly basic. Just populate array navURLs with the filenames of your web pages, and array linkText with the text you want to display in your links. Function navbar() iterates through all the filenames and generates a link with corresponding text for all those that do not appear in the location.href property of the current document. It’s that easy. Check out the code in Example 6.8.

Example 6-8. navbar.js

 1 var navURLs = new Array('astronomy.html', 'science.html', 'sports.html', 2 'music.htm', 'people.htm'); ...

Get JavaScript Application Cookbook now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.