Double Horizontal Menu by Deluxe-Menu.com
Double Horizontal Menu

Menu Screenshots

Double Horizontal Menu Javascript Mouseover Cascading Menu

Features

Easy Setup
  • De Luxe Tuner. GUI interface to create your double horizontal menu menus easily and in no time
  • Sensible menu parameters for manual editing
Cost Effective
Java Slide Menu Double Horizontal Menu
Seamless Integration
  • Cross-frame support - menus work on frameset-based pages
  • Visible over flash, select boxes, iframes, java applets
  • Multiple menus on the same page
  • Amicable to other scripts and css styles
  • Any HTML code can be used inside menu items
Compatibility              
  • Full cross-browser compatibility including IE, Netscape, Mozilla, Opera, Firefox, Konqueror and Safari on Windows, Mac OS and Linux
  • Menu can be populated from a database using ASP, PHP, etc.
  • Search engine friendly
  • Support for any doctypes
  • Fits for secure sites
  • Section 508 compliant
Unrivalled Features
  • Scrollable, dragable, floating, right-click menus
  • Keyboard navigation - press Ctrl+F2 to enter the menu
  • Unique Java Script API for altering menu "on-the-fly", without page reloading
  • AJAX technology - loads menu data from the server "on-fly and on-demand".
  • Search feature - add the search area in the menu and type symbols. The found words will be higlighted.
  • Sound support!



2.0 Buttons by Web-Buttons.com v3.0.0

Javascript Menu. DHTML Menu.

  • Tune menu parameters manually or using Deluxe Tuner. Then add several rows of a code within html page - your menu is ready!
  • Use special JavaScript functions for: Dynamic changing of items (text, link, icons and even individual style!). Making a menu item active/inactive. Addition/removing of items. Changing of visibility of items. Getting the information on any menu, submenu and items. Other tricks.
  • Opportunity to control the menu from the keyboard.
  • Cross-frame mode allows you to build full-featured menus on the pages that use frame-based structure. But for all that it's not necessary to insert any additional code into all the pages - just specify some additional parameters of the menu.

Recent Questions

Q: It seems that if I try and use the syntax  ["| with some HTML such as <DIV class = 'myclass'> inside dropdown menu it IGNORES the HTML and just treats it like another link.
But if I don't start the line with  ["| ..... Then I get a syntax error.

For example:

I am trying to place 4 links in a square shape in the top left of my screen. To do this I was going to create DIV's and set the TOP and LEFT to different values from within a loop (I left out the code that does the updating for myleft and mytop...)

  var menuItems = [

<loop>

 ["|<div style='position: absolute; left: <cfoutput>#myleft#</cfoutput>px; top: <cfoutput>#mytop#</cfoutput>px>'","", "", "", "", "", "", "", "", "", "",],

 ["|#ParentMenuDesc#","index.cfm?Workflow=#Workflow#&role=#Privilege_id#&cacheid=#createuuid()#&Process_Type=#Process_Type#&PageMode=#Process_Logic#", "#menu_option_icon#", "", "", "_top", "", "", "", "", "",],

 ["|</div>","", "", "", "", "", "", "", "", "", "",],

<end loop>

];

What am I doing wrong here?.... Can you show me how to accomplish this task?

A: No, this syntax is incorrect. It won't work.

  var menuItems = [

<loop>

 ["|<div style='position: absolute; left: <cfoutput>#myleft#</cfoutput>px; top: <cfoutput>#mytop#</cfoutput>px>'","", "", "", "", "", "", "", "", "", "",],

 ["|#ParentMenuDesc#","index.cfm?Workflow=#Workflow#&role=#Privilege_id#&cacheid=#createuuid()#&Process_Type=#Process_Type#&PageMode=#Process_Logic#", "#menu_option_icon#", "","", "_top", "", "", "", "", "",],

 ["|</div>","", "", "", "", "", "", "", "", "", "",],<end loop>

];

You should have <div> ... </div> tags in each dropdown menu item!
It is not correctly to write <div> ... </div> tags for wholesubmenu.

  var menuItems = [
 ["|<div style='position: absolute; left:<cfoutput>#myleft#</cfoutput>px; top: <cfoutput>#mytop#</cfoutput>px>text</div>'","", "", "", "", "", "", "", "", "", "",],

 ["|#ParentMenuDesc#","index.cfm?Workflow=#Workflow#&role=#Privilege_id#&cacheid=#createuuid()#&Process_Type=#Process_Type#&PageMode=#Process_Logic#", "#menu_option_icon#", "","", "_top", "", "", "", "", "",],

 ["| ","", "", "", "", "", "", "", "", "", "",],
];



Q: How do I set the width of sub menu items to be the same width as the parent horizontal dhtml menu item? I can see how to set a px or % width, and when the at least one sub menu item exceeds the parent item the the entire menu stretches to that width (which is fine), but what about the instance where the sub menu items are not as wide as the parent item - in this case, the sub menu is not as wide as the parent item, which looks odd. Is there any way to force it to be (at least) the same width as the parent item?

I hope this is all clear to you, if not, please give me a shout for clarification.

A: You can set exact width for your top items using Individual Item Styles and set submenu width usingIndividual Submenu Style.

You should also set the following parameter:
  var noWrap=0;


Q: Im working on a menu with your program, and am unable to make the javascript sticky menu save the hover states after you move off the navigation item and onto its child nav items.

For example

Example Nav item 1
-Example Sub Nav item 1
-Example Sub Nav item 2
-Example Sub Nav item 3

When I hover on the Example Nav Item 1, the hover state works, but when I move my mouse down (Im using a horizontal javascript sticky menu) to select Example Sub Nav item 1, I want the hover state to stay selected on the "parent" Nav Item. Is this possible? What is the variable you have to change to accomplish this?

A: Yes, it's possible, please use

  var saveNavigationPath = 1; The javascript sticky menu keeps items highlighted during menu navigation.
0 - disabled, 1 - enabled (default).



Q: I know. I have two menus on the page and I am not using beforeItemImage orafterItemImage for the top menu in javascript (the one you referenced below), but I need it for the second menu. The parameters for that menu are in mainnav_data.js.

Even when I only call dmWorkPath and dmenu.js once, it does not work.

A: See, it is not correctly to use image-based items:

["","", "mainnav_data.files/corpinfo.gif", "mainnav_data.files/corpinfo2.gif", "", "_self", "0", "", "", "", "", ],

and specify beforeItemImage/afterItemImage parameters. They won't work in that case.

You can create such buttons in the following ways:
1) Use image-based menu (images with text).

Create normal and mouse-over state images (with text) for each item:
["","", "mainnav_data.files/corpinfo.gif", "mainnav_data.files/corpinfo2.gif", "", "_self", "", "", "", "", "", ],
["","", "mainnav_data.files/new.gif", "mainnav_data.files/new2.gif", "", "_self", "", "", "", "", "", ],
["","", "mainnav_data.files/xxxxx.gif", "mainnav_data.files/xxxxx2.gif", "", "_self", "", "", "", "", "", ],


2) Use combined background for the menu in javascript items (images without text).

  var beforeItemImage = [,]; //left-side image for normal and mouse over state
  var itemBackImage = [,]; //background or image for normal and mouse over state
  var afterItemImage = [,]; //right-side image for normal and mouse over state
  var beforeItemImageW = '';
  var afterItemImageW = '';
  var beforeItemImageH = '';
  var afterItemImageH ='';

But you should create a small images in any Graph Editor, for example:
button_n_back.gif
button_n_left.gif
button_n_right.gif
button_o_back.gif
button_o_left.gif
button_o_right.gif

You cannot use these two methods together!