// ADDITIONAL NOTES
// The input variables to the toggle function are the number of the submenu to open/close,
// starting with 0, and the number of pixels to move the objects below.
// For example toggle(1,60) opens/closes the second submenu and moves the objects below 60 pixels.
var nom = 4; // Number of menus
var usePictures = 1; // use pictures? 1 = yes, 0 = no
var ttls = new Array(); // An array for the title objects
var subs = new Array(); // An array for the submenu objects
var lastn;
var lastmove;
if (document.layers) {visible = 'show';hidden = 'hide';}
else if (document.all) {visible = 'visible';hidden = 'hidden';}
for (var i = 1; i <= nom; i++) {ttls = ('title' + i);subs = ('submenu' +i);}
function picopen {
title = ('title' + n);
pic = ('pic' + n);
if (document.layers) {document.layers[title].document.images[pic].src = "opened.gif";}
else if (document.all) {document.all(pic).src = "opened.gif";}
}
function picclose {
title = ('title' + n);
pic = ('pic' + n);
if (document.layers) {document.layers[title].document.images[pic].src = "closed.gif";}
else if (document.all) {document.all(pic).src = "closed.gif";}
}
lastn = (nom + 1);
lastmove = 0;
function lasttoggle(n,move) {
if (n <= nom) {menu = ('submenu' + n);
if (document.layers) {submenu = document.layers[menu];}
else if (document.all) {submenu = document.all(menu).style;}
if (submenu.visibility == visible) {submenu.visibility = hidden;
picclose; // Remove this if you don't use pictures
for (var i = (n+1); i <= nom; i++) {
if (document.layers) {
document.layers[ttls].top -= move;
document.layers[subs].top -= move;}
else if (document.all) {
document.all(ttls).style.pixelTop -= move;
document.all(subs).style.pixelTop -= move;}
}
}
}
}
function toggle(n,move) {
var i = n+1
menu = ('submenu' + n);
if (document.layers) {submenu = document.layers[menu];}
else if (document.all) {submenu = document.all(menu).style;}
if (submenu.visibility == visible) {
submenu.visibility = hidden;
if (usePictures) picclose;
for (var i = (n+1); i <= nom; i++) {
if (document.layers) {document.layers[ttls].top -= move;document.layers[subs].top -= move;}
else if (document.all) {document.all(ttls).style.pixelTop -= move;document.all(subs).style.pixelTop -= move;}
}
}
else {
submenu.visibility = visible;
if (usePictures) picopen;
if (lastn != n) {lasttoggle(lastn,lastmove);}
for (var i = (n+1); i <= nom; i++) {
if (document.layers) {document.layers[ttls].top += move;document.layers[subs].top += move;}
if (document.all) {document.all(ttls).style.pixelTop += move;document.all(subs).style.pixelTop += move; }
}
}
lastn = n;
lastmove = move;
}
you're using an antiquated method of traversing the DOM - document.layers and document.all are only functional with netscape and internet explorer, respectively.
you should read up on the document.getElementById() method and go from there.
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.