/* Created: 2000-10-21 Issued: 2001-01-11 Modified: 2005-02-23 Copyright (c) 2001-2006 by Philip Shaw, phil@codestyle.org This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/2.0/ or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. */ /* Successfully debugged for: Mozilla M15 Netscape 3, 4.5, 6.0 Internet Explorer 4.0 5.0, 5.5 Opera 3.62, 4.0, 5.0, 5.11, 6.0 */ // Declare the number of menus // N.B. Add menu IDs and adjust // widths of divs in stylesheet: // visibility-HorizontalMenus.css /////////////////////////////////////// // Global number for total menus: /////////////////////////////////////// var totalmenus = 5; // Global number for counting the tab // sequence /////////////////////////////////////// var tabcount = 0; // Global string for menu output: /////////////////////////////////////// var menutxt = ''; // Global array for menu data: /////////////////////////////////////// var menu = new makeArray(totalmenus); // Custom array constructor, // indexed from 1: /////////////////////////////////////// function makeArray(n){ this.size = n; for(i=1; i<=n; i++){ this[i] = 0; } return(this); } // Menu group constructor: /////////////////////////////////////// function menuObject(n,MenuTitle,MenuURL){ this.size = n; this.MenuTitle = MenuTitle; this.MenuURL = MenuURL; this.Bullet = new makeArray(n); } // Menu item constructor: /////////////////////////////////////// function bulletObject(BulletTitle,BulletURL){ this.BulletTitle = BulletTitle; this.BulletURL = BulletURL; } // Define menus. Add new items by // increasing menu bullets argument // and adding a new indexed bullet // object to the end of the list. // // Menu arguments: // 1 = No. of bullets // 2 = Menu title // 3 = Menu URL // Bullet arguments: // 1 = Bullet title // 2 = Bullet URL /////////////////////////////////////// // First menu /////////////////////////////////////// menu[1] = new menuObject(4,'Homepage','/'); menu[1].Bullet[1] = new bulletObject('# Feedback','#feedback'); menu[1].Bullet[2] = new bulletObject('Print','#'); menu[1].Bullet[3] = new bulletObject('Forward','#'); menu[1].Bullet[4] = new bulletObject('Bookmark','#'); // Second menu /////////////////////////////////////// menu[2] = new menuObject(5,'Javascript','#'); menu[2].Bullet[1] = new bulletObject('Articles','#'); menu[2].Bullet[2] = new bulletObject('Books','#'); menu[2].Bullet[3] = new bulletObject('FAQ','#'); menu[2].Bullet[4] = new bulletObject('Glossary','#'); menu[2].Bullet[5] = new bulletObject('Links','#'); // Third menu /////////////////////////////////////// menu[3] = new menuObject(5,'DOM','#'); menu[3].Bullet[1] = new bulletObject('Articles','#'); menu[3].Bullet[2] = new bulletObject('Books','#'); menu[3].Bullet[3] = new bulletObject('FAQ','#'); menu[3].Bullet[4] = new bulletObject('Glossary','#'); menu[3].Bullet[5] = new bulletObject('Links','#'); // Fourth menu /////////////////////////////////////// menu[4] = new menuObject(5,'CSS','#'); menu[4].Bullet[1] = new bulletObject('Articles','#'); menu[4].Bullet[2] = new bulletObject('Books','#'); menu[4].Bullet[3] = new bulletObject('FAQ','#'); menu[4].Bullet[4] = new bulletObject('Glossary','#'); menu[4].Bullet[5] = new bulletObject('Links','#'); // Fifth menu /////////////////////////////////////// menu[5] = new menuObject(5,'What\'s New','/codestyle/new/index.shtml'); menu[5].Bullet[1] = new bulletObject('Articles','/Contents.shtml'); menu[5].Bullet[2] = new bulletObject('Books','/anchorpoints/Books.shtml'); menu[5].Bullet[3] = new bulletObject('Glossary','/css/Glossary.shtml'); menu[5].Bullet[4] = new bulletObject('Site Log','/codestyle/log/index.shtml'); menu[5].Bullet[5] = new bulletObject('Add a link','/anchorpoints/index.shtml#submit'); // Compile the static menu headings: /////////////////////////////////////// menutxt += '