Click here to Skip to main content
15,867,308 members
Articles / Programming Languages / Javascript
Article

XP collapsible menu with description

Rate me:
Please Sign up or sign in to vote.
3.86/5 (7 votes)
18 Nov 20021 min read 159.4K   1.8K   43   29
An update of my Windows XP Style Menu article, now with description supported for every link.

Sample Image - MenuWithDescription.gif

Introduction

This is an update of my previous article (WindowsXP Style Menu) which creates a Windows XP look alike Panel Bar with the separation of structure, presentation and functions. Now this menu is updated to support transparent popup description for every link inside it.

Since this article uses the same code of the previous article, I just show here the structure (HTML) of the menu which you can just copy and paste to create as many submenus inside it as you need, without writing a single line of code.

The Structure (HTML)

The complete HTML is in the source code.

HTML
<!-- begin the menu -->
<div id="MainMenu">
  <!-- begin submenu -->
  <span>
    <div style="width:180">
      <table cellpadding="1" cellspacing="0" class="Menu_Head">
        <tr>
          <td width="90%">ASP.NET</td>
          <td><img src="down.gif" border="0">&nbsp;</td>
        </tr>
      </table>
    </div>
    <div class="Menu_Items">
      <div>
        <div>
          <a href="">User Controls</a>
          <div class="Description">
            <div class="DescTitle">User Controls articles</div>
            View all articles about User Controls
          </div>
        </div>
        <div>
          <a href="">Server Controls</a>
          <div class="Description">
            <div class="DescTitle">Server Controls articles</div>
            Tutorials show you how to write server controls
          </div>
        </div>
        <div>
          <a href="">Custom Controls</a>
          <div class="Description">
            <div class="DescTitle">Custom Controls articles</div>
            Tutorials show you how to write advanced custom controls
          </div>
        </div>
        <div>
          <a href="">Applications</a>
          <div class="Description">
            <div class="DescTitle">Applications</div>
            View all demo applications like guestbook, forum...
          </div>
        </div>
      </div>
    </div>
  </span>
  <!-- end sub menu -->
  ....

The structure is quite simple, the menu starts with the first <div> tag, each submenu is nested inside it with the <span> tag. The Submenu header (title) is nested inside the <div style="width:180"> and all the links are nested inside the

HTML
<div 
class="Menu_Items">
. After every link, you should have a <div> to contain its description, it will automatically show when you move the mouse over the link.

That's it for the menu. Hope this could help you a bit.

History

  • 19 November 2002

    Fixed an expanding bug: clicking too fast on the expand/collapse button will result in an extra white space of the submenu. Thanks to Obliterator for pointing it out.

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here


Written By
Singapore Singapore
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions

 
GeneralMENU WITH DESCRIPTION Pin
nagen pnaja31-Aug-10 2:02
nagen pnaja31-Aug-10 2:02 
Generaldoes not work in firfox .... Pin
homano9-Nov-09 19:52
homano9-Nov-09 19:52 
Questionhave you find that there is a small bug in the script program? Pin
gordengu17-Apr-07 15:29
gordengu17-Apr-07 15:29 
QuestionFirefox doesnt work! Pin
Aboulmak9-Nov-06 22:15
Aboulmak9-Nov-06 22:15 
anyone know hot to make this script work on firefox ?
let me know asap thx
QuestionDoes anyone know how to do the same thing in ASP.NET ?? Pin
conankunkid5-Oct-05 4:02
conankunkid5-Oct-05 4:02 
AnswerRe: Does anyone know how to do the same thing in ASP.NET ?? Pin
jay_dubal25-Feb-06 9:49
jay_dubal25-Feb-06 9:49 
QuestionHow to Hide all menu when loaded Pin
Patrick Olurotimi Ige9-Jul-05 21:36
Patrick Olurotimi Ige9-Jul-05 21:36 
GeneralNetscape Pin
scotthallett7-Apr-05 12:28
scotthallett7-Apr-05 12:28 
QuestionHow to auto hide another when click one? Pin
thinhhangdieu30-Sep-04 17:17
thinhhangdieu30-Sep-04 17:17 
AnswerRe: How to auto hide another when click one? Pin
all_i_want_is_everything2-Mar-06 3:58
all_i_want_is_everything2-Mar-06 3:58 
GeneralDescriptions for only certain items Pin
Shawn M. Reed23-Mar-04 4:10
Shawn M. Reed23-Mar-04 4:10 
Generalshow active item Pin
Member 64796119-Mar-04 8:00
Member 64796119-Mar-04 8:00 
GeneralRegarding maintaining the state Pin
fasilak19-Mar-04 4:45
fasilak19-Mar-04 4:45 
GeneralRe: Regarding maintaining the state Pin
fasilak23-Mar-04 0:29
fasilak23-Mar-04 0:29 
QuestionHow to use it with Netscape Pin
balpo15-Apr-03 17:42
balpo15-Apr-03 17:42 
AnswerRe: How to use it with Netscape Pin
Anonymous15-Apr-03 22:07
Anonymous15-Apr-03 22:07 
GeneralRe: How to use it with Netscape Pin
burkazoid200319-Jan-04 13:45
burkazoid200319-Jan-04 13:45 
Questionload on default? Pin
Anonymous19-Feb-03 20:12
Anonymous19-Feb-03 20:12 
AnswerRe: load on default? Pin
Keertikiran11-May-07 1:38
Keertikiran11-May-07 1:38 
Generalquestion with frame Pin
xslipwizx2-Feb-03 16:55
sussxslipwizx2-Feb-03 16:55 
GeneralRe: question with frame Pin
ericfgarcia11-Nov-03 17:21
ericfgarcia11-Nov-03 17:21 
GeneralRe: question with frame Pin
jjfatts18-May-06 11:12
jjfatts18-May-06 11:12 
GeneralCool Pin
Steve McLenithan19-Nov-02 5:17
Steve McLenithan19-Nov-02 5:17 
GeneralSmall bug expanding Pin
Obliterator18-Nov-02 6:38
Obliterator18-Nov-02 6:38 
GeneralRe: Small bug expanding Pin
tommy skaue18-Nov-02 23:32
tommy skaue18-Nov-02 23:32 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.