Dropdown Menu Javascript by Deluxe-Menu.com
Dropdown Menu Javascript

Menu Screenshots

Dropdown Menu Javascript Dropdown Menu Cross Frame Javascript

Features

High Performance
  • AJAX menu loading - loads web menu data from the server "on-the-fly".
  • Commonly loads quicker than other html page elements
  • UL/LI items structure
  • Runs well with an unlimited number of submenus and items
Easy Setup
  • De Luxe Tuner. GUI interface to create your dropdown menu javascript menus easily and in no time
  • Sensible menu parameters for manual editing
The Html Code For Drop Downs Menus Dropdown Menu Javascript
Professional Look-n-feel
  • Entirely customizable look-n-feel
  • A lot of pre-designed dropdown menu javascript samples
  • Hundreds of visual effects
  • Custom CSS styles can be applied for all menu settings
Cost Effective
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



2.0 Buttons by Web-Buttons.com v3.0.0

Javascript Menu. DHTML Menu.

  • There can be multi level menus - create as many rows or columns of the menu as you want.
  • Use a mouse to drag a menu as a usual window. Also you can construct the menu where each submenu can be "detached" from the main menu (MSOfficeToolbarLike mode).
  • When the page is scrolled the menu remains visible. The DHTML menu can "float" along one or two coordinate axes.

Recent Questions

Q: When doing a multi-frame frameset (1 top frame, 2 bottom frames) like this:

<frameset ID="frames" ONLOAD="getBottom()" ROWS="50, *" BORDER="0" FRAMEBORDER="no" FRAMESPACING="0">
   <frame NAME="frmTop" SRC="top.htm" MARGINHEIGHT=0 MARGINWIDTH=0 SCROLLING=NO NORESIZE FRAMEBORDER="0" />
    <frameset ID="bottomFrames" cols="171,*">
     <frame name="frmLeft" src="left.htm" MARGINHEIGHT=0 MARGINWIDTH=0 SCROLLING=NO NORESIZE FRAMEBORDER="0"/>
     <frame name="frmMain" MARGINHEIGHT=0 MARGINWIDTH=0 SCROLLING=NO NORESIZEFRAMEBORDER="0" />
    </frameset>
</frameset>


And using the dm_frameinit like this:
dm_initFrame("[object]", 0, 2, 0);

it works fine in IE -> the menus are displayed exactly under the text and in the bottom right frame.

However, in Firefox, the menu drop down is displayed to the right of the top menu text, and exactly the number of pixels as the width of the left frame.

Perhaps there needs to be some FireFox checking to fix this?
Can you help me with that?


A: The problem is in a structure of your frameset.
Mozilla browsers can't determine absolute coordinates for a frame, sosubmenus drop down with an offset.

You should create the following frameset structure:

 --|------------
   | menu
 --|------------
   |
   | submenus
   |

Now a top row has 2 columns and all browsers can determine awidth of the 1st column in the second row.


Q: Do you have a template example of creating menu javascripts using data stored in a database?


A: You may generate a menu from a database or XML using any server-side script, e.g., PHP, ASP, VB, etc.
However, these scripts don't work inside of Javascript .js files,
so, you should move parameters of a menu from a .js file into an html-page, e.g.:

<!-- Deluxe Menu -->
<noscript><a href="http://deluxe-menu.com">Javascript Menu by Deluxe-Menu.com</a></noscript>
<script type="text/javascript">  var dmWorkPath = "menudir/";</script>
<script type="text/javascript" src="menudir/dmenu.js"></script>
<!-- (c) 2006, http://deluxe-menu.com -->

<script type="text/javascript" language="JavaScript1.2">
// and describe parameters of a menu
  var parameter1=value1;
  var parameter2=value2;
etc.

  var menuItems = [
// here you generate items using server-side scripts (php, asp, vb, etc.)
];
</script>

The example of the menu working with PHP/MYSQL you can find here:
http://deluxe-menu.com/rq-loading-bar-MySQL-support.html


Q: Deluxe menu v. 2 (the most recent version) -- I've triedeverything but cannot get the separator images (vertical orhorizontal) to appear. My other images appear fine, and I know theimages are where I've called them. I've tried root relative anddocument relative paths, and even set the advanced image prefixvariable, but they never appear. Can you spot what's wrong?

A related question: what I'm trying to do is to simply have a 1pxseparator between my main items (vertical) and between my sub-items(horizontal). Short of building a css mode menu, is this possibleusing your script -- if I set border=1 without any spacing, then thetwo borders between adjoining items come together and I get whatappears to be a 2px border separator. Is it possible to set margin-right=1, margin-bottom=1? This doesn't seem possible through thetuner: it appears to be border on all four sides or nothing.


A: You should see the following parameters:

//------- Separators -------
  var separatorImage=""; //--- file exists in this location
  var separatorWidth="5";
  var separatorHeight="100%";
  var separatorAlignment="right";
  var separatorVImage="/assets/images/public/separator.gif";
  var separatorVWidth="3";
  var separatorVHeight="100%";
  var separatorPadding="";

You should set a separator in the menuItems, for example:

  var menuItems = [
["Home","index.cfm", , , , , , , , ],
["-"],
["About Us","about.cfm", , , , , , , , ],

];


Q: Our default directory for the files is menudir
How do we get the software to recognize this default directory when generating the script and support files. The default needs to be added for the icon files etc.


A: You can use additional parameters to make menu paths absolute:

  var pathPrefix_img = "http://domain.com/images/";
  var pathPrefix_link = "http://domain.com/pages/";

These parameters allow to make images and links paths absolute.
For example:

  var pathPrefix_img = "http://domain.com/images/";
  var pathPrefix_link = "http://domain.com/pages/";

  var menuItems = [
["text", "index.html", "icon1.gif", "icon2.gif"],
];

So, link path will be look so:
http://domain.com/pages/index.html

Images paths will be look so:
http://domain.com/images/icon1.gif
http://domain.com/images/icon2.gif

Please, try to use these parameters.