Dynamic Horizontal Menu Css Javascript by Deluxe-Menu.com
Dynamic Horizontal Menu Css Javascript

Menu Screenshots

Dynamic Horizontal Menu Css Javascript Menu Cascade Script

Features

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
Easy Setup
  • De Luxe Tuner. GUI interface to create your dynamic horizontal menu css javascript menus easily and in no time
  • Sensible menu parameters for manual editing
Vertical Menu Css Dynamic Horizontal Menu Css Javascript
Cost Effective
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
Professional Look-n-feel
  • Entirely customizable look-n-feel
  • A lot of pre-designed dynamic horizontal menu css javascript samples
  • Hundreds of visual effects
  • Custom CSS styles can be applied for all menu settings



2.0 Buttons by Web-Buttons.com v3.0.0

Javascript Menu. DHTML Menu.

  • Setup menu parameters manually or using De Luxe Tuner. Then add some rows of a code within html page code and your menu is ready!
  • Use special Java Script methods for: Dynamic changing of items (link, text, icons, arrows and even individual style!). Addition/removing of items or submenus. Disabling and enabling menu items. Getting the info on every submenu, menu, and items. Changing appearance of items. Other coding tricks.
  • Cross-frame mode lets you to construct full-featured dhtml menus on the pages with frames. But for all that frame set it's not necessary to insert any additional code into all the pages - just specify several extra menu parameters.
  • Ability to handle the menu from the keyboard via keystrokes.

Recent Questions

Q: Can I create menus with cross-frame capability using your drop down menu generator?
With the menu beingin one frame and the submenus opening to the other frame?

A: See how should you create cross frame menu:

1. To initialize the cross frame menu call dm_initFrame()
function instead of standard dm_init() function within data.js file:

dm_initFrame(framesetID, mainFrameInd, subFrameInd, orientation);

framesetID - id attribute of the frameset;
mainFrameInd - index of the main frame (where the top-menu is placed), >=0;
subFrameInd - index of the subframe (where the submenus will be shown), >=0;
orientation - frame orientaion: 0 - top-to-bottom, 1 - left-to-right; 2 - bottom-to-top; 3 - right-to-left.

So you should create your menu in Deluxe Tuner, save it.
Create html file with your frame set.
Set ID for the first frameset:
<FRAMESET id=frmSet rows=220,*>
<FRAME id=frame1 src="Deluxe Menu Samples_files/cross-frame-horizontal-1.htm"> //menu frame
<FRAME id=frame2 name=frame2 src="Deluxe Menu Samples_files/testlink.htm"> //content frame
</FRAMESET>

Then you should open your data file in any text editor and change
dm_init(); for example to dm_initFrame("frmSet", 0, 1, 0);
You'll find more info here:
http://deluxe-menu.com/cross-frame-mode-sample.html

Q: I have another question regarding the popup window. I need to use an iframe within the popup window. Is there any way I can close the dhtml popup from the page loaded within the iframe?

A: You can close the popup using the following function:
document.getElementById('win').hide();

Unfortunately it won't work if you use iframe as window content.
You open another page in the popup (in Iframe) so you cannot accessdocument.getElementById('win').hide();
element which is situated on the first page.

When you use text or object_id as window content the content of the popup will be situatedon the same page so you can access document.getElementById('win') element and hide it.

There is a workaround.
Use text as content type and add the following code inside popup:

<a onclick="document.getElementById('win').hide();">...</a> <iframe></iframe>

Your link will work in that case.


Q: I will build menu for several books’ Contents, each book is more than 100 lines and has links. I think if all the books’ contents in 1 *.JS file then it is TOO LOONG!!.
Can I break it down to 1 book for 1*.JS ? How?


A: You cannot divide your menuItems parameter.
You can only use one .js file for your menu parameters and the other.js file for your menuItems = [...];

But you can do it in two ways.

1) You can try to use several menus on the one page, for example:
param.js // file with menu parameters (all parameters before menuItems = [...];)
menu1.js // menuItems for "AC-DC", "ANLOG"
menu2.js // menuItems for "DIGITAL", "WinXP"
menu3.js // menuItems for "MS-Word", "MS-Excel"
In these menu files you should write
menuItems = [
...
];
dm_init();

Then you should install your menu in the following way

<script type="text/javascript" src="param.js"></script>
<table>
...
<script type="text/javascript" src="menu1.js"></script>
...
<script type="text/javascript" src="menu2.js"></script>
...
<script type="text/javascript" src="menu3.js"></script>

But it will be easier to use vertical menu in such case
  var isHorizontal=0;
  var smColumns=1;

2) You can also try to add some code, see the attached example.

In the first file (@MY books (Multiple Col.js) I write menuItems for the first item "AC-DC".
Notice that you should delete comma at the end of the last item
  var menuItems = [

["AC-DC","", , , , , , , , ],
 ["|@Book1","testlink.htm", , , , , , , , ],
...
 ["|@Book3","", , , , , , , , ],
   ["||CH02","", , , , , , , , ],
   ["||CH01","", , , , , , , , ] // delete comma at the end of the last item

];

In the second file (@MY books (1.js) you should write
menuItems = menuItems.concat(

[

["ANLOG","", , , , , , , , ],
 ["|@Book1","", , , , , , , , ],
 ["|@Book2","", , , , , , , , ],
 ["|@Book3","", , , , , , , , ] // delete comma at the end of the last item

]
);

In the third file (@MY books (2.js) you should write
menuItems = menuItems.concat(

[

["DIGITAL","", , , , , , , , ],
 ["|Item 1332","", , , , , , , , ],
["WinXP","", , , , , , , , ],
 ["|Item 1333","", , , , , , , , ],
["MS-Word","", , , , , , , , ],
 ["|Item 1334","", , , , , , , , ],
["MS-Excel","", , , , , , , , ],
 ["|Item 1335","", , , , , , , , ] // delete comma at the end of the last item
]
);

dm_init();

Notice that you should write dm_init(); function in the last file.

In the .html file you should write
...
<tr>
<script type="text/javascript" src="@MY books (Multiple Col.js"></script>
<script type="text/javascript" src="@MY books (1.js"></script>
<script type="text/javascript" src="@MY books (2.js"></script>
</tr>
I hope you understand me.


Q: Hello. We need some tech support regarding our deluxe menu.

All of our pages that have the menu code on them are suddenly giving status bar errors that say: "Done, but with errors on page"

When pulling up the error details, the dialog says:

Line: 2
Char: 1
Error: Syntax error
Code: 0

On pages that do not have the menu at all, we're not getting the error.


A: Now you have such code:

<SCRIPT LANGUAGE="" type="text/javascript">
<!--

  var dmWorkPath = "menu/";

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
  var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
//-->
</SCRIPT>

So, your menu cannot find   var dmWorkPath = "menu/"; parameter on yourpage.

Try to write your code in the following way:

<SCRIPT type="text/javascript">  var dmWorkPath = "menu/";</script>
<SCRIPT LANGUAGE="" type="text/javascript" src="menu/dmenu.js"></SCRIPT>
<!-- (c) 2006, http://deluxe-menu.com -->