Finally a lightweight accordion that is built with scriptaculous and works properly in every browser.
Plus a little extra!
Each horizontal menu has a link with hidden text. If you view this in Firefox and press CTRL + SHIFT +S, you'll see that each horizontal bar has a link. But why do you need this? For screen readers. Remember, the corporate world doesn't want to get sued. So they try to cater to every user... including the disabled.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Proin non felis. Fusce sed nunc. Vivamus dictum, odio in elementum porta; est odio adipiscing lectus, eget elementum nibh metus ut massa? Maecenas in sem. Nullam hendrerit rhoncus turpis! Quisque tempus ultricies lorem! Integer fermentum. Nullam libero est, mattis eget, venenatis pellentesque, bibendum in, odio.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Proin non felis. Fusce sed nunc. Vivamus dictum, odio in elementum porta; est odio adipiscing lectus, eget elementum nibh metus ut massa? Maecenas in sem. Nullam hendrerit rhoncus turpis! Quisque tempus ultricies lorem! Integer fermentum. Nullam libero est, mattis eget, venenatis pellentesque, bibendum in, odio.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Proin non felis. Fusce sed nunc. Vivamus dictum, odio in elementum porta; est odio adipiscing lectus, eget elementum nibh metus ut massa? Maecenas in sem. Nullam hendrerit rhoncus turpis! Quisque tempus ultricies lorem! Integer fermentum. Nullam libero est, mattis eget, venenatis pellentesque, bibendum in, odio.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Proin non felis. Fusce sed nunc. Vivamus dictum, odio in elementum porta; est odio adipiscing lectus, eget elementum nibh metus ut massa? Maecenas in sem. Nullam hendrerit rhoncus turpis! Quisque tempus ultricies lorem! Integer fermentum. Nullam libero est, mattis eget, venenatis pellentesque, bibendum in, odio.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Proin non felis. Fusce sed nunc. Vivamus dictum, odio in elementum porta; est odio adipiscing lectus, eget elementum nibh metus ut massa? Maecenas in sem. Nullam hendrerit rhoncus turpis! Quisque tempus ultricies lorem! Integer fermentum. Nullam libero est, mattis eget, venenatis pellentesque, bibendum in, odio.
In this example I'm showing how the smaller accordions needs to fit in the parent container, and when opened, should not expand beyond the parent container area. Again, stuff corporations like.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Proin non felis. Fusce sed nunc. Vivamus dictum, odio in elementum porta; est odio adipiscing lectus, eget elementum nibh metus ut massa? Maecenas in sem. Nullam hendrerit rhoncus turpis! Quisque tempus ultricies lorem! Integer fermentum. Nullam libero est, mattis eget, venenatis pellentesque, bibendum in, odio.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Proin non felis. Fusce sed nunc. Vivamus dictum, odio in elementum porta; est odio adipiscing lectus, eget elementum nibh metus ut massa? Maecenas in sem. Nullam hendrerit rhoncus turpis! Quisque tempus ultricies lorem! Integer fermentum. Nullam libero est, mattis eget, venenatis pellentesque, bibendum in, odio.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Proin non felis. Fusce sed nunc. Vivamus dictum, odio in elementum porta; est odio adipiscing lectus, eget elementum nibh metus ut massa? Maecenas in sem. Nullam hendrerit rhoncus turpis! Quisque tempus ultricies lorem! Integer fermentum. Nullam libero est, mattis eget, venenatis pellentesque, bibendum in, odio.
One major issue I found while playing with this accordion script was that certain elements could NOT have a height or margins set. Doing so would cause a 'jerky' or 'snap' effect to happen. This also happens if too much content is squeezed into the space. So, study the css closely...
There are two options for non-js users. Either allow the user to see all the content when their javascript is turned off, or give them links they can follow.
The second option is how I coded this page. If you turn off javascript and reload the page, you'll notice that the accordion is visible but the content doesn't expand. Each of the green bars is still clickable. This would of course assume you have pages to take the user to.
© Copyright 2007 stickmanlabs
Accordion is freely distributable under the terms of an MIT-style license.