[an error occurred while processing this directive] [an error occurred while processing this directive] Lightweight Javascript Pop Out Menus [an error occurred while processing this directive] [an error occurred while processing this directive]

Lightweight Pop Out Menus

The Fateful Decision

Updated for W3C'ish DOMs and including horizontal, vertical and tertiary menus in both directions. If your browser is W3C compliant (Gecko only in mid 2003) the pop-ups. pop-downs do not use javascript at all - they have been implemented with pure CSS. Not a line of code in sight.

We decided to do a site makeover in '2000 for all kinds of reasons. We reviewed all the possible alternative and snazzy technologies we had seen and the only that that consistently ranked high on everyones lists of 'useful' (as opposed to 'snazzy') was pop-out (or pop-down) menus. These pesky creatures, the consensus was, speeded up in-site navigation and had the additional benefit that you could check early on if you were going down the right path.

We had to have pop-out menus on the new site.

You can skip the rest of this soul-searching explanation and get to the tech meat here.

Apache Configuration and Browser detection
Cross Browser DHTML, CSS and Javascript (Jscript)

We looked at the available choices (free stuff naturally) and they are great, maybe even fantastic (see our links pages). But on closer examination we decided not to use them for the following reasons:

The Inevitable Strategy

It was pretty obvious, pretty early (like the second day) that we were stuck with supporting each browser family differently...so having accepted that...and wanting lightweight menus (OK so we are mean) ..and working on the theory that we could quickly learn enough about CSS, DHTML, Javascript, DOMs and SSI (how naive are these guys) we decided on the following technical strategy:

A Word to the Wise

So sometime later a much chastened couple of guys knew a lot more about a number of technologies ...

To summarise the experience:

Positive

However, if you must use an off-the-shelf solution, don't care about the overhead, or have no control over the server side then have no fears about the quality of the available choices. They are very good and getting better.

Negative

Are there down-sides or limitations in our approach?

So in the spirit that "opening the kimono is good for the soul" (eh!) this is what we did ...and learned...mostly painfully.

Apache Configuration and Browser detection

Cross Browser DHTML, CSS and Javascript (Jscript)

[an error occurred while processing this directive]
[an error occurred while processing this directive]
[an error occurred while processing this directive] [an error occurred while processing this directive]
[an error occurred while processing this directive] [an error occurred while processing this directive]